摘要:
C++中,子类若有与父类同名的成员变量和成员函数,则同名的成员变量相互独立,但同名的子类成员函数重载父类的同名成员函数。举例如下:#include using namespace std;class A{public: int a; A(){ a = 1; } int get_a(){ return a; } void print(){ cout << "This is A. a: " << a << endl; }};class B: public A{public: int a; B()... 阅读全文
posted @ 2013-10-30 15:05
myLittleGarden
阅读(2600)
评论(0)
推荐(0)
摘要:
转自:http://www.cnblogs.com/icemoon1987/archive/2012/10/01/2709572.html1. 面向对象:对象、类、继承2. 构造函数:类的数据成员不能在类定义时初始化(因为只是声明),要用构造函数构造函数分两步执行:初始化成员(初始化列表),执行构造函数当类成员没有默认初始化式时,需要用初始化列表显示表示(const 成员,引用)初始化成员的顺序,与成员在初始化列表中的顺序无关,按照成员定义顺序合成的默认构造函数不会初始化内置或复合类型成员(指针、数组)构造函数不能为 const,因为 const 成员函数不能修改类中成员构造函数不能为虚函数, 阅读全文
posted @ 2013-10-30 15:03
myLittleGarden
阅读(269)
评论(0)
推荐(0)
摘要:
构造方法用来初始化类的对象,与父类的其它成员不同,它不能被子类继承(子类可以继承父类所有的成员变量和成员方法,但不继承父类的构造方法)。因此,在创建子类对象时,为了初始化从父类继承来的数据成员,系统需要调用其父类的构造方法。 如果没有显式的构造函数,编译器会给一个默认的构造函数,并且该默认的构造函数仅仅在没有显式地声明构造函数情况下创建。构造原则如下:if(子类没有自定义构造函数){ if(基类没有自定义构造函数){ 用子类定义对象时,先自动调用基类的默认构造函数,再调子类的默认构造函数。 } else if(基类有自定义无参构造函数)... 阅读全文
posted @ 2013-10-30 14:06
myLittleGarden
阅读(13352)
评论(0)
推荐(0)