会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
benxintuzi
博客园
::
首页
::
博问
::
闪存
::
新随笔
::
联系
::
订阅
::
管理
::
公告
2015年5月25日
条款9:不要在构造和析构过程中调用virtual函数
摘要: 如下是一个股票交易的例子: 1 class Transaction // 交易的基类 2 { 3 public: 4 Transaction(); 5 virtual void logTransaction() const ...
阅读全文
posted @ 2015-05-25 15:22 benxintuzi
阅读(306)
评论(0)
推荐(0)
条款6:显式拒绝编译器生成的默认函数
摘要: 如果一个对象是独一无二的,那么我们就不应该提供copy构造函数和copy assignment操作符函数(二者统称为copying函数)。但是即使我们不定义它们,编译器也会在别人调用它们时默认提供,如何拒绝编译器的这种行为呢?由于编译器自动生成的函数都是public的,因此你可以提供private的...
阅读全文
posted @ 2015-05-25 09:11 benxintuzi
阅读(252)
评论(0)
推荐(0)
条款5:了解C++提供的默认函数
摘要: 当我们定义一个类时,如果没有声明任何函数,那么C++编译器会默认提供4个函数:默认构造函数、复制构造函数、赋值操作符函数、析构函数,并且这些函数默认都是public且inline的。因此,当你定义如下类: 1 class Empty 2 { 3 4 }; 5 6 // 等价于定义如下类:...
阅读全文
posted @ 2015-05-25 08:24 benxintuzi
阅读(289)
评论(0)
推荐(0)