正文

<C++语言命令详解>第六章:构造函数2005-08-22 03:40:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/InnoLux/4034.html

分享到:

    可以为同一个类编写许多不同的构造函数(可重载),在每个构造函数中有不同的变量或变量类型。     默认构造函数,每个函数都应该有一个默认的构造函数,它没有任何参数。系统提供的默认构造函数就简单地把所有成员变量初始化为0(但没认为编写默认构造函数时,系统会简单提供一个隐藏的默认构造函数)。     复制构造函数,当函数中对象作为值传递或函数返回一个对象时,系统自动调用复制构造函数。如果没认为地编写复制构造函数时,系统会简单地产生一个隐藏的复制构造函数,它完成成员到成员的复制(不共享数据,除了指针使用处外)。     一般我们使用引用来定义复制构造函数,它产生一个对象的别名,所以两个对象共享同一数据块。但这样容易毁坏数据。如CStr::CStr(CStr &CStr),注意其中每个CStr的含义。     当使用Const关键字限制时,就可以避免错误的发生。CStr::CStr( Const CStr &CStr),这样复制构造函数就不能改变原始数据的任何值。     复制构造函数:CStr name2= name1 ; 与 CStr name2(name1);是等价的。其中第一句并不是name2调用默认初始化函数,然后再将name1的值赋给它,而是与第二句一样,调用复制构造函数。

阅读(2998) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册