2012年4月5日

Effective C++读书笔记04

摘要: 2012-03-301、绝不要重新定义继承而来的缺省参数值(对于virtual) class base { public :virtual void draw(color c=RED)const=0; } class derived public base { public :virtual void draw(color c=GREEN)const; } base *p=new derived; //p的静态类型为base*,动态类型为derived* 虚函数满足动态绑定,依据动态类型调用,∴p->draw(RED); //没有问题 但缺省参数是静态绑定,依据静态类型调用,∴p-> 阅读全文

posted @ 2012-04-05 13:14 TheBest 阅读(115) 评论(0) 推荐(0) 编辑

Effective C++读书笔记03

摘要: 2012-03-281、避免写一个成员函数,传回一个非const型指针或引用,并指向较低存取层的member Class B { private :A a; };//则a就是较低存取层的成员(即类成员变量,A类的成员变量a) 比如: Class B { public : A &func() {return a;} private: A a; };//若进行如下调用 B b=new B(); A &temp=b.fun(); 则可通过temp任意读写b.a,即b.a不再是private ,而是public 指针同上2、不要传回局部引用或以new获得的指针所指的对象 (1)传回引用 阅读全文

posted @ 2012-04-05 13:05 TheBest 阅读(121) 评论(0) 推荐(0) 编辑

导航