Передача по постоянной ссылке в списке захвата лямбда-выраженийC++

Программы на C++. Форум разработчиков
Anonymous
Передача по постоянной ссылке в списке захвата лямбда-выражений

Сообщение Anonymous »

Я создаю лямбда-функцию, требующую доступа к достаточному количеству переменных в контексте.

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

const double defaultAmount = [&]{
/*ToDo*/
}();
Я бы предпочел не использовать [=] в списке, так как не хочу, чтобы было сделано много копий значений.
Меня беспокоит стабильность программы, если я использую [&], поскольку я не хочу, чтобы лямбда-выражение изменяло набор захвата.
Могу ли я передать константную ссылку? [const &] не работает.

Возможно, хороший компилятор оптимизирует копии значений, поэтому [=] предпочтительнее.

Подробнее здесь: https://stackoverflow.com/questions/311 ... pture-list

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