构造函数的重载
//构造函数的重载 #include<iostream> using namespace std; class Box { //两个构造函数 public: Box();//一个无参数 ,在函数体中对其私有数据成员赋值 Box(int h,int w,int len):height(h),width(w),length(len){}//第二个构造函数直接在类体的的定义中,参数初始化 int volume(); private: int height; int width; int length; }; Box::Box( ) { height=10; width=20; length=30; } int Box::volume() { return(height*width*length); } //对于一个对象只执行其中一个构造函数 int main( ) { Box box1; cout<<box1.volume()<<endl; Box box2(15,30,25); cout<<box2.volume()<<endl; system("pause"); return 0; } /* 在声明构造函数时指定默认参数 如第9行可改为 Box(int h=10,int w=10,int len=10); 构造函数依然如原来一样。 1.Box box1 box1.volume则是10*10*10 2.Box box2(15) box2.volume则15传给h ,15*10*10 3.Box box3(15,30,40) box3.volume则是15*30*40 */
posted on 2011-06-08 23:11 more think, more gains 阅读(264) 评论(0) 编辑 收藏 举报