我正在阅读"用C++思考",它刚刚介绍了这个extern声明.例如:
extern int x;
extern float y;
Run Code Online (Sandbox Code Playgroud)
我想我理解了意义(没有定义的声明),但我想知道什么时候它有用.
有人能提供一个例子吗?
特别是在C++中,例如:语义差异是什么:
static const int x = 0 ;
Run Code Online (Sandbox Code Playgroud)
和
const int x = 0 ;
Run Code Online (Sandbox Code Playgroud)
两者static作为键和存储类说明(即内部和功能外).
const static int foo = 42;
Run Code Online (Sandbox Code Playgroud)
我在StackOverflow上的一些代码中看到了这个,我无法弄清楚它是做什么的.然后我在其他论坛上看到了一些困惑的答案.我最好的猜测是它在C中用来隐藏foo其他模块的常量.它是否正确?如果是这样,为什么有人会在C++上下文中使用它,你可以做到这一点private?