Вложенные функции.

  • Автор темы 62316e
  • Дата начала
Статус
Закрыто для дальнейших ответов.
6

62316e

#1
Почти все знают что с++ не умеет "Вложенные функции". Ну и почти все так же знают что нет такого чего с++ не умеет, почти.

Код:
#define method(RET_VALUE, ARGS ) class __TEMP_CLASS__ { public: RET_VALUE operator() (ARGS)
#define declare(NAME) } NAME
#define $ ,
int _tmain() 
{
method(int, int a $ int b) 
{
return a+b;
} declare(sum);

int c = sum(333, 333);
}
#undef $
Есть один недостаток, такую ф-ю можно определить только один раз в одном блоке. Этот недостаток можно исправить добавив ещё один аргумент в method.
 
Статус
Закрыто для дальнейших ответов.