【发布时间】:2012-07-08 04:56:13
【问题描述】:
我正在开发一个 C++ 项目。在使用 Java 之后,我正在自学 C++。代码:
#include <iostream>
#include <string>
using namespace std;
class dayType
{
private:
string day;
string week[] = {"Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"};
public:
dayType()
{
day = "Monday";
dayID = 0;
}
};
还有更多的公共函数,但我把它们省略了,因为它们在这里并不重要。数组存在编译时错误。它说它是“无法解析标识符:周”、“意外令牌:{”和“意外令牌:}”。有人可以解释为什么会这样吗?如果我将其声明为“字符串周 [7];”然后在函数中定义实际值,它工作正常,但这很痛苦。
【问题讨论】:
-
您正在使用 Java 语法来初始化字符串数组
week[]。 -
“定义函数中的实际值......很痛苦” - 为什么?非本地化成员变量初始化是没有意义的,因此您必须同时查阅声明和构造函数才能找到非默认值....
-
Lion 提到的内容在 C++11 中是有效的。