c++ - 我在关于 C++ 的陈述中遗漏了什么吗?

标签 c++ syntax rules

除了声明、定义和预处理器指令之外,您不能在函数之外使用代码。

该陈述准确吗,还是我遗漏了什么?我正在教我的侄子编程,他试图在 main 之前放置一个 while 循环。他还很年轻,我想给他一个他能理解的硬性简单规则。

最佳答案

不完全是——您还可以将表达式放在全局变量声明中:

int myGlobalVar = 3 + SomeFunction(4) - anotherGlobalVar;

但是您只能将表达式 放在这里,它的计算结果必须是您用来初始化全局变量的值。您不能放置完整的语句(没有代码块、没有 if 语句、没有循环等)。此代码将在 main() 有机会运行之前执行,因此请谨慎操作。我建议不要在全局初始化器中调用函数,除非你无法避免。

关于c++ - 我在关于 C++ 的陈述中遗漏了什么吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4045216/

相关文章:

sonarqube - sonarqube findbugs 插件附带的 findbugs 规则与实际的 findbugs 规则相同吗

c++ - DirectShow USB 摄像头 LED 闪光灯访问

c++ - 使用 CMake 为 visual studio 项目配置 txx 文件

c++ - <inherit from parent or PROJECT DEFAULTS> 的默认值的 Visual Studios(主要是 2012 pro)文件位置

java - 将二维数组(字符串)存储到文件中并检索它

java - 在 Drools 6 中以编程方式创建新的 drools 规则的新接受方式是什么?

c++ - 在两个方向上寻找搜索算法 - c/c++/awk

mysql - 此SQL语句有什么问题-语法错误#1064?

c++ - 为什么人们在 C++ 中如此多地使用 __(双下划线)

postgresql - 相当于 `pg_rules` 中的 `information_schema`