Re[9]: хитрая конструкция
От: Hard_Club  
Дата: 06.03.15 17:54
Оценка:
К>void devnull(...) {}

К>#define CALL(expr) ( (expr), void(), 0 ) // выполняет выражение, возможно, типа void, и возвращает int 0


К>template<class F, class... Xs>

К>void each(F f, Xs&&... xs)
К>{
К> devnull( CALL(f(xs))... );
К> (void) std::initializer_list<int> { CALL(f(xs))... };
К> int nulls[] = { CALL(f(xs))... };

К>}

К>[/c]

Как эта штука — #define CALL(expr) ( (expr), void(), 0 ) — называется в стандарте?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.