c++ - 为什么在 C++ 中不允许初始化整数成员变量(不是 const static)?

标签 c++ c initialization compiler-errors

当我尝试在类定义中初始化一个 int 成员变量时,我的 C++ 编译器报错。它告诉“只能在类中初始化静态常量整数数据成员”。您能否解释此限制背后的基本原理(如果可能,举例说明)。

最佳答案

因为目前的标准是不允许的。 According to Bjarne ,您将能够在 C++0x 中执行此操作。如果您确实需要它,请尝试将编译器设置为 C++0x(GCC 中的 -std=c++0x)并查看您的编译器是否支持它。

关于c++ - 为什么在 C++ 中不允许初始化整数成员变量(不是 const static)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4323008/

相关文章:

C++算法优化: find K combination from N elements

c - 尝试读取文本文件并对其进行排序时出现段错误 11

c - 为什么我总是得到负值?

c++ - 这个未知大小数组的列表初始化在 C++0x 中有效吗?

c++ - 如何使用 std::array 模拟 C 数组初始化 "int arr[] = { e1, e2, e3, ... }"行为?

c++ - 使用C++标准库以对数时间进行堆化

c++ - 使用 VC++ express 编程窗口

C++构造函数/析构函数

c - 管道和 waitpid

java - 我对java的数据类型感到困惑。