摘要:
如果一个类中有很多成员对象(别的类的对象),则必须在此构造函数中完成构造(不管怎样,编译器会在此构造函数中增加很多代码)如果此类中有一个成员对象(别的类的对象)是需要参数的,则必须要定义构造函数,且明确调用这个成员的构造函数class a{ 4 public: 5 a(){cout <<" a " << endl;} 6 ~a(){cout << " ~a " << endl;} 7 }; 8 9 a& f1(){ 10 a a1; 11 return a1; 12 } 13 int main(){ 阅读全文
摘要:
22 void f3(){ 23 string str1 = "nimei"; 24 string str2; 25 string str3 = "a"; 26 cout << sizeof(str1) << endl << sizeof(str2) << endl<< sizeof(str3) << endl; 27 }大小都是4 阅读全文
摘要:
c++支持多态的方法引用和指针class a{public: virtual void f(){cout f();// 2 (*a3).f();// 2 a* p1 = new a; a* p2 = new b; b* p3 = dynamic_cast (p1); p3->f();//Segmentation fault p3 = dynamic_cast (p2); p3->f();// no problem return p3;}void f2(){ b* p= f1(); p->f();//2 (*p).f();//2}//cast其实是一种编译器指令,大部... 阅读全文
摘要:
26 class a{ 27 public: 28 a(){cout << "a" << endl;} 29 ~a(){cout << "~a" << endl;} 30 }; 45 class x:virtual public a{ 46 public: 47 x(){cout<<"x" << endl;} 48 ~x(){cout<<"~x" << endl;} 49 }; 50 class y:virtual pu 阅读全文