sách gpt4 ăn đã đi

c++ - 通过 lambda 捕获列表中的常量引用传递

In lại Tác giả: IT Lão Cao 更新时间:2023-10-28 22:09:59 25 4
mua khóa gpt4 giày nike

我正在构建一个需要访问上下文中大量变量的 lambda 函数。

const double defaultAmount = [&]{
/*ToDo*/
}();

我不想在列表中使用 [=],因为我不希望制作大量的值(value)拷贝。

如果我使用 [&],我会担心程序稳定性,因为我不希望 lambda 修改捕获集。

我可以通过 const 引用传递吗? [const &] 不起作用。

也许一个好的编译器会优化出值拷贝,所以 [=] 更可取。

câu trả lời hay nhất

您可以显式创建和捕获 const 引用:

int x = 42;
const int& rx = x;
auto l = [&rx]() {
x = 5; // error: 'x' is not captured
rx = 5; // error: assignment of read-only reference 'rx'
};

关于c++ - 通过 lambda 捕获列表中的常量引用传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31179355/

25 4 0
Cựu chiến binh CNTT
Hồ sơ

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá taxi Didi miễn phí
Phiếu giảm giá taxi Didi
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress