8.3.5/8 Functions [dcl.fct]
говоритНевозможно вернуть функцию из функции. Как я мог?
[...] функции не должна иметь тип возвращаемого типа массива или функции, хотя они могут иметь тип возвращаемого указателя типа или ссылки на такие вещи. [...]
Почему так явным правилом? Есть ли какой-то синтаксис, который бы даже позволял возвращать функцию в отличие от указателя на функцию?
Я пропустил перевод цитаты?
typedef void (*fp)();
void foo(){}
fp goo()
{
return foo; //automatically converted to function pointer
}
возвращение (аннулируются *) Foo !! –
@ B.Nadolson, который считается недействительным. –
"автоматически преобразуется в функцию ** указатель **". Тогда это не функция;) – mfontanini