c++赋值运算符重载
来源:互联网 发布:java内存垃圾回收算法 编辑:程序博客网 时间:2024/05/22 17:10
赋值运算符重载
Thing &operator=(const Thing &t){
//判断是否赋值本身
if(*this!=t){
delete name;name=new Thing[strlen(t.name)+1];
strcpy(name,t.name);
//其他变量也得赋值
}
}
拷贝构造
delete name;
name=new Thing[strlen(t.name)+1];
strcpy(name,t.name);
//其他变量也得赋值
}
一 用一个已经存在的对象去创建另一个对象
1:
Thing t;
Thing tt(const Thing &t);
2:
Thing *t=new Thing(t);
二 函数的参数是类类型。传值
Thing t;
fun(t);
void fun(Thing t){}
三 函数的返回值是类类型,返回一个对象
Thing fun(){
return t;
}
四 创建对象时如果用赋值运算符,如果左边的对象是没有创建的而右边是已经创建的
Thing t;
Thing tt=t;
而
Thing t;
Thing tt;
tt=t;
则不会调用拷贝构造 只会调用赋值运算符重载
本文来源:http://blog.csdn.net/pzw0416/article/details/7389309
如需转载,请注明出处。。
- C++:赋值运算符重载
- 重载赋值运算符(c/c++)
- 重载赋值运算符(c++)
- 重载赋值运算符
- 重载赋值运算符
- 重载赋值运算符
- 重载赋值运算符
- 重载赋值运算符
- 重载赋值运算符
- 赋值运算符重载
- 赋值运算符重载
- 重载赋值运算符
- 重载赋值运算符
- 赋值运算符重载
- 赋值运算符重载
- 重载赋值运算符
- 赋值运算符重载函数[C/C++/C#]
- [C++]拷贝构造函数和赋值运算符重载
- 菜鸟学Python-输入输出、环境变量、print
- 业务架构、信息架构、技术架构三位一体
- 渲染通路(Pass)
- ABAP中的F4帮助怎么用? .
- 软件编码(乱码)
- c++赋值运算符重载
- 关于网络隐私的一些思考
- 路由器、交换机
- 关于字符串长度的截取
- 120330 selenium RC 基于java 环境配置
- 检查是否连接到网络
- Linux环境安装ACE 6.1.0
- C++中事件机制
- VGA Hardware