Re[2]: Анонимные функции
От: R1  
Дата: 16.12.05 17:55
Оценка:
Здравствуйте, _nn_, Вы писали:

__>На данный момент заменителями этой вещи существуют : boost::bind/boost::lambda, локальные классы.

__>Вы лучше скажите где вам это понадобилось, а там найдется подходящее решение

1) очень удобно использовать при автогенерации кода.

2) пишу библиотеку где возможность обьявлять функции "неотходя от кассы " внесет ясность и практичность, о как. Вообщем, чтобы действие и реакция на действие находились в одном месте, а обьявлять функцию где-то, а потом использовть указатель неочень удобно и не наглядно, причем этих функций достаточно много.
Какроче как в генераторах типа yacc,flex,...

/* приметно так */
typedef int (*fint_t)();
typedef struct x_t {
 char * expr;
 fint_t fn_accept;
} x_t;

// где-то в программе
x_t x = 
{
 "\d+",
 { return(replace_allowed? true:false); }
};

char * result = replace(x, string_for_replace); // заменить с учетом контекста
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.