发现老师存在一个有待修正的地方,关于执行Farmer和Worker构造函数顺序的问题。经过代码论证,此顺序取决于多继承的申明顺序,若申明时是class MigrantWorker :public Worker,public Farmer,则先执行Worker构造函数,再执行Farmer构造函数,析构函数则相反。而老师说此处构造函数调用取决于初始化列表中的顺序,被证明是错误的。 (有兴趣的同学,可以自己再申明MigrantWorker类时,注意改变Worker和Farmer的顺序,即可领会)
2016-09-26
ChildLabourer *p = new ChildLabourer("xiaoming",15);忘记初始化了