这里test1(s)时 会生成一个person的临时对象(因为test1方法的形参类型是Person) 调用了person的默认拷贝构造函数 相当于 Person p(s);由于默认拷贝构造函数的功能就是依次对成员变量拷贝,而且s的m_strName值是James(从Person继承的m_strName被隐藏) 所以最后三行打印是Person -- play() James ~Person...我觉得我理解的应该没错
2016-07-25
虚方法的详解 给大家安利一下http://zhidao.baidu.com/link?url=ZWb-qFVFNwlZm7s503pQD8URT9ETC9PpgIjtqW2pic5YtvoMDjoOTAwkf1jc70FzeIpOknERKanwvfKva4PGh5dYOCheJKDl451gmySE3R3
2016-07-25
老师讲的有点晕 给大家安利一篇文章http://www.cnblogs.com/qlwy/archive/2011/08/25/2153584.html
2016-07-24
顺便说:部分同学请理清内部调用和外部调用的关系。外部调用(如主函数中直接调用)只能调用public里的成员及函数。内部成员函数(在同一个类里面)却可以调用包括其本身的public、protected、private内成员。
2016-07-22
借用qq__44883580534的回答:《首先他证明了protected继承并不是被继承到public里面,因为person的子类Soldier的实例无法访问protected继承自person的数据成员,这时还有可能是被继承到private里面;但是,Soldier的子类Infantry可以访问到父类protected继承自person的成员函数,说明只能是被继承到protected中,若是到了private中,则Infantry中无法使用。》
从上面可以知道,思路是很清晰而直接的,那些说还没证明清楚地可以翻看前面的代码示例。
从上面可以知道,思路是很清晰而直接的,那些说还没证明清楚地可以翻看前面的代码示例。
2016-07-22