必须返回对象时,别妄想返回其reference(Don’t try to return a reference when you must return an object.)
reference是对象的另一个名称,它指向一个实际存在的对象。
如果reference指向local 对象,则对象在函数返回前销毁。
如果reference指向new 对象,则函数返回的地方需要进行delete操作,给客户带来不便。
特别的:
const Point& operator * (const Point & lhs, const Point & rhs)
{
Point *p = new Point(lhs.GetX(), rhs.GetY());
return p;
}
Point w, x, y, z;
w = x * y * z;
因为有两次*,所以会new两次,但是只可以获得一个new的指针,另外一个new就被泄露掉了。
注意:
1、绝对不要反回pointer或reference指向一个local stack对象,或返回reference指向一个heap-allocated对象,或返回pointer或reference指向一个local static对象而有可能同时需要多个这样的对象。
分享到:
相关推荐
条款21:必须返回对象时,别妄想返回其reference 条款22: 将成员变量声明为private 条款23: 宁以non-member、non-friend替换member函数 条款24:若有所参数皆需类型转换,请为此采用non-member函数 条款25:考虑...
条款21:必须返回对象时,别妄想返回其reference don't try to return a reference when you must return an object. 条款22:将成员变量声明为private declare data members private. 条款23:宁以non-member、non-...
《Effective STL中文版:50条有效使用STL的经验》是EffectiveC++的第3卷,被评为“值得所有C++程序员阅读的C++书籍之一”。《Effective STL中文版:50条有效使用STL的经验》详细讲述了使用STL的50条指导原则,并提供了...
利用VS 2013写的模拟微信拼手气红包的C++程序。这只是一个简单的红包分配算法,不要妄想这会是一个抢红包的工具。
有效的CPlusPlus 视C ++为一种语言联邦 const,枚举,内联 正确使用const ...必须返回对象时,别妄想返回其参考 将成员变量声明为private 宁以非会员,非朋友替换会员函数 若所有参数皆需类型转换,请逐步采用
《零起点学通C++:多媒体范例教学》知识系统全面,拥有字典般的容量,可随用随查,涵盖指针、面向对象、操作符重载、流、命名空间、模板、异常处理、宏等主流C++开发技术。为了使读者能够活学活用
《妄想症DeliverMe》特殊存档点攻略.docx
《妄想症DeliverMe》誓言结局攻略.docx
《妄想症》疑难攻略.docx
妄想改变世界的最酷少年终于回归
《妄想症DeliverMe》替身结局攻略.docx
初一作文“傻子”的“妄想”.docx
免责声明:该BATCH批处理脚本(以下简称bat)仅用于学习和共享交流,一切因bat导致的此类负面行为应当由用户承担。
理论流体力学可能会导致严重的幻想。 本文重点介绍其中三个。 首先,以围绕球体的流动为例,证明了绕流问题的已知潜在解决方案不是唯一的,并且存在非潜在解决方案。 已经获得了围绕球体流动的非... 动量扩散导致必须将
插件特色功能: 指定位置删除\插入数组元素 数据自动去重 改变数组元素位置 挂载系统目录 改写系统文件权限 遍历目录下的文件\文件夹 静默安装\卸载apk 设置输入法 获取指定app在通知栏消息 打开\关闭WiFi ...
该网站程序,是卡盟整站程序,内核是Ecshop。类似平台开钻之类整站程序。 免费开源,平台开钻,自动发货点卡,充值点卡,充值QB,一系列PHP源码 卡盟的源码,快快下载吧,我已经尝试啦
The VDI Delusion: Why Desktop Virtualization Failed to Live Up to the Hype, and What the Future Enterprise Desktop Will Really Look Like,桌面虚拟化介绍的架构图书文字版PDF,256页 Amazon相关链接:...
这是一套《愿有人陪你颠沛流离》读书笔记PPT,共19页; PPT内容简介: 作者 卢思浩Kevin 是一个做大梦的傻子 是一个笃信自未来的人 是个能在城市里迷路的路痴 是个妄想留住时间的跟时间赛跑的人 是个能为一点微小的...
这是xiph.org的的端口,用于使用libcdio进行CDROM访问。 这样,cdparanoia可以在GNU / Linux以外的平台上运行。 有关cdparanoia的更多信息,请参见 。
锅! 此应用程序是基于txt数据集的文本生成器。 基于使用N-gram的马尔可夫链。 测试进行中...