繁体   English   中英

在C ++中声明全局范围变量const

[英]Declare a global scope variable const in c++

在C或C ++中,是否可以声明具有全局范围的const,但是定义是在函数内部设置的?

怎么样做( 现场样本

const int& MyConstValue(int x) {
    static const int myConstValue = x;
    return myConstValue;
}

int main() {
    std::cout << MyConstValue(5) << std::endl; // This is the 1st call and "wins"
    std::cout << MyConstValue(8) << std::endl;

    return 0;
}

输出是

5
5

至少对于这甚至可以保证是线程安全的。

不,那是不可能的。 声明必须在与定义相同的范围内。 否则,它的名称不相同。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM