中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

C++中lambda表達式如何捕獲成員變量

c++
小樊
128
2024-07-05 18:53:27
欄目: 編程語言

在C++中,lambda表達式可以通過捕獲列表來捕獲外部變量。如果要捕獲成員變量,可以使用this指針來捕獲當前對象的所有成員變量。示例如下:

#include <iostream>

class MyClass {
public:
    MyClass(int value) : m_value(value) {}

    void testLambda() {
        int localVar = 5;

        auto lambda = [this, localVar]() {
            std::cout << "Member variable m_value: " << m_value << std::endl;
            std::cout << "Local variable localVar: " << localVar << std::endl;
        };

        lambda();
    }

private:
    int m_value;
};

int main() {
    MyClass obj(10);
    obj.testLambda();

    return 0;
}

在上面的示例中,lambda表達式捕獲了MyClass對象的成員變量m_value和testLambda函數內部的局部變量localVar。在lambda表達式中,使用[this]來捕獲當前對象的所有成員變量,使用[localVar]來捕獲局部變量localVar。

0
札达县| 泸西县| 长海县| 张北县| 禹城市| 东乌珠穆沁旗| 新宁县| 永定县| 南阳市| 印江| 耒阳市| 泰安市| 维西| 灌云县| 毕节市| 绥化市| 延津县| 青河县| 交口县| 杨浦区| 醴陵市| 什邡市| 同仁县| 普兰店市| 南岸区| 黄龙县| 阿图什市| 霍城县| 保亭| 温泉县| 宜州市| 高州市| 丰县| 兰坪| 张家界市| 蒙城县| 阿拉善左旗| 瓦房店市| 双流县| 寻乌县| 宾川县|