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
Если я назначаю лямбду в C ++ с этим: < /p> [code]auto&& mylambda = [&](int someparam) { some_function(); return 42; }; < /code> Это неправильно? Я знаю, что этот вывод автоматического типа запускает, но является ли лямбда (которая, я думаю, о нем как об созданной анонимной структуре с перегрузкой оператора () [/code]) в этом случае RValue и Mylambda являются ссылкой на rValue?[code]template void ThisAcceptsALambda(Callable f) { Callable *addr = &f; store(addr); do_something_with_the_stored_addr_and_call_the_lambda(); } < /code> ? Я до сих пор не получаю разницу между использованием Auto [/code] и Auto && в этом случае