初始化的顺序:和定义的顺序以及初始化函数都有关系。都要先定义的在前,后定义的在后。甚至连类的顺序都必须这样。
这种情况是在 codeblocks 里面发生的,但是在NETBEANS 里面没有,在VS里面呢?
class Course
{
public:
int n;
Course(int i):n(i){};
Course();
//Course();
virtual ~Course();
private:
};
class Student{
private:
typedef std::valarray<double> DBArray;
Course mycourse;
DBArray scores;
int n;
int m;
public:
Student(int i):mycourse(i),scores(mycourse.n){};
};
posted on 2013-07-30 10:06 shoutcharter 阅读(115) 评论(0) 编辑 收藏 举报