打印本文 打印本文  关闭窗口 关闭窗口  
C++编程人员容易犯的10个C#错误7
作者:佚名  文章来源:不详  点击数  更新时间:2008/4/18 14:40:22  文章录入:杜斌  责任编辑:杜斌

错误7:类成员变量的初始化

C#中的初始化与C++中不同。假设有一个带有private性质的成员变量age的Person类,Employee是由继承Person类而生成的,它有一个private性质的salaryLevel成员变量。在C++中,我们可以在Employee的构造器的初始化部分初始化salaryLevel,如下面的代码所示:

Employee::Employee(int theAge, int theSalaryLevel):
Person(theAge) // 初始化基础类
salaryLevel(theSalaryLevel) // 初始化成员变量
{
// 构造器的代码
}


这种方法在C#中是非法的。尽管仍然可以初始化基础类,但象上面的代码那样对成员变量初始化就会引起编译错误。在C#中,我们可以在定义成员变量时的同时对它进行初始化:

Class Employee : public Person
{
// 成员变量的定义
private salaryLevel = 3; // 初始化
}


注意:必须明确地定义每个变量的访问权限。
打印本文 打印本文  关闭窗口 关闭窗口