Получение лямбды через Auto &&C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Получение лямбды через Auto &&

Сообщение Anonymous »

Если я назначаю лямбду в C ++ с этим: < /p>

Код: Выделить всё

auto&& mylambda = [&](int someparam) {
some_function();
return 42;
};
< /code>
Это неправильно? Я знаю, что этот вывод автоматического типа запускает, но является ли лямбда (которая, я думаю, о нем как об созданной анонимной структуре с перегрузкой оператора () 
) в этом случае RValue и Mylambda являются ссылкой на rValue?

Код: Выделить всё

template 
void ThisAcceptsALambda(Callable f) {
Callable *addr = &f;
store(addr);
do_something_with_the_stored_addr_and_call_the_lambda();
}
< /code>
? Я до сих пор не получаю разницу между использованием Auto 
и Auto && в этом случае


Подробнее здесь: https://stackoverflow.com/questions/797 ... rough-auto
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»