我在头文件中有一个类:
class Employee
{
//Private data members
private:
string firstName;
string lastName;
char gender;
//number of employees
const static int numEmployees = 0;
public:
....
};
Run Code Online (Sandbox Code Playgroud)
愚蠢的事情是在教师的"GUIDELINE"中说,在类的私有成员中声明numEmployees为静态整数值0
问题是我无法更新numEmployees
变量,因为它是const
,例如当您在公共场所声明构造函数时:..您无法增加numEmployees = numEmployees + 1
.
如果不申报numEmployees
的const
,只是做static int numEmployees;
的Visual Studio 2010报错说,只有const
将在课堂上宣布.
知道如何申报numEmployees
吗?谢谢!
既然numEmployees
会改变,那就不应该const
.非const静态变量必须在类声明之外进行初始化,例如在源文件中,如下所示:
int Employee::numEmployees = 0;
Run Code Online (Sandbox Code Playgroud)
话虽这么说,numEmployees
作为Employee
班上的一员可能不是最好的主意.
我会做gender
一个枚举,而不是一个字符.
归档时间: |
|
查看次数: |
8679 次 |
最近记录: |