Указатель на функцию, возвращающую указатель на экземпляр Shape
(то есть Shape*
) и принимающий void
в качестве параметра - без параметров.
Сравните это, например, с typedef int (*function_pointer)(double);
- это указатель на функцию, которая принимает double
в качестве параметра и возвращает int
...