default template parameters vs. default function args(?)
От: niXman Ниоткуда https://github.com/niXman
Дата: 23.08.13 20:29
Оценка:
приветствую!

вот любопытно, почему 'default template parameters' присутствует в языке:
template<typename T1, typename T2 = T1>
void foo(T1 v1, T2 v2) {}

а 'default function args' — нет?:
void foo(int v1, int v2 = v1) {} // error: local variable ‘v1’ may not appear in this context

?

этот вопрос, как мне кажется, становится еще более острым в контексте того, что в корректировочном стандарте к С++11 присутствует 'Generalized Lambda-capture', который уже реализован в gcc-4.9.0:
auto foo = [x=32, y=x]() {return x==y}; // ok

(тут, 'x' и 'y' — локальные переменные лямбды, а не контекста в котором она объявлена)

спасибо.
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.