设为首页 加入收藏

TOP

3.5.4 拷贝构造函数
2013-10-07 15:32:39 来源: 作者: 【 】 浏览:74
Tags:3.5.4 拷贝 构造 函数

3.5.4   拷贝构造函数

到目前为止,我们已将构造函数分成了两组:默认构造函数和带参数构造函数。前者的调用不带参数,后者的调用需要参数。在带参构造函数中,有两类很重要的构造函数,为强调其重要性,它们各自拥有一个特殊的名称:拷贝构造函数(copy constructor)和转型构造函数(convert constructor)。本小节讨论拷贝构造函数,转型构造函数将在3.5.7小节讨论。

拷贝构造函数创建一个新的对象,此对象是另外一个对象的拷贝品。拷贝构造函数有两种原型:

 
两种原型的参数类型都是引用,因此原型
 

是错误的。

拷贝构造函数可以有多于一个的参数,但是第一个以后的所有参数都必须有默认值。例如,原型

 

也声明了一个拷贝构造函数。

如果类的设计者不提供拷贝构造函数,编译器会自动生成一个。编译器生成的这个拷贝构造函数版本完成这样的操作:将源对象所有数据成员的值逐一赋值给目标对象相应的数据成员。

例3-25

 
本例列举了拷贝构造函数的使用方法。假定使用的是编译器生成的拷贝构造函数,尽管对象orig和clone拥有不同的存储空间,它们相应的数据成员具有相同的值。
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇3.5.7 转型构造函数 下一篇3.5.1 构造函数

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·Python中文网 - 人生 (2025-12-24 18:49:47)
·【整整648集】这绝对 (2025-12-24 18:49:44)
·Python超详细一条龙 (2025-12-24 18:49:42)
·【超详细】JDK 下载 (2025-12-24 18:19:32)
·Java_百度百科 (2025-12-24 18:19:29)