Chinaunix首页 | 论坛 | 博客
  • 博客访问: 299964
  • 博文数量: 148
  • 博客积分: 4365
  • 博客等级: 上校
  • 技术积分: 1566
  • 用 户 组: 普通用户
  • 注册时间: 2008-07-05 21:38
文章分类
文章存档

2014年(2)

2013年(45)

2012年(18)

2011年(1)

2009年(54)

2008年(28)

我的朋友

发布时间:2013-01-10 20:33:07

inline只是程序员向编译器提出的一个请求,编译器会根据自身的判断来决定是否对目标函数进行inline处理。inline建议只针对短小且调用频繁的函数,最好这个函数不会被频繁修改,否则包含了这个头文件的源文件都需要重新进行编译构建。慎用inline,它给调试带来了困难。......【阅读全文】

阅读(324) | 评论(0) | 转发(0)

发布时间:2013-01-10 18:26:47

使用异常的情况下,一定要力求异常安全代码,避免任何的资源泄漏,悬垂指针一类的风险。异常不太好控制,短木板理论,异常安全性取决于调用栈异常安全性最弱的那个函数。GOOGLE的C++ Guide Style 里禁用异常。......【阅读全文】

阅读(325) | 评论(0) | 转发(0)

发布时间:2013-01-10 17:59:07

避免返回handle(pointer,ref,iterator)指向对象的内部成员,破坏了对象的封装性。当此对象已经不存在或被销毁后,这个handle变为悬垂(dangling handle),增加了使用风险。一定要返回内部成分时,注意严格控制(改写)权限,严控非const接口,包括返回值的const性.......【阅读全文】

阅读(216) | 评论(0) | 转发(0)

发布时间:2013-01-10 16:04:27

尽量少使用(强制)类型转换。特别是dynamic_cast,效率很低。如果非要转换,也请使用c++中那四个cast,而不是c中的那种风格。使用处提供封装,避免到处都是转换的(字面)代码。......【阅读全文】

阅读(230) | 评论(0) | 转发(0)

发布时间:2013-01-08 18:28:54

提供swap接口以便于交换两个对象,中间不要抛出异常。提到了Pimpl,pointer to implementation,一种经常使用到的实现模式,减少耦合,减少由于头文件变动引发的不必要的重编译。wiki上说的挺清楚:http://en.wikibooks.org/wiki/C++_Programming/Idioms有一个Book类,由于变动,新加入了m_Title成员。其对应的Book.h肯定要修改,那么对应包含了Book.h的所有文件都需要重新编译,即使关于Book对象他们只知道print接口,这是一个内部私有成员变动,外界不应该感知,引发了不必要的重新编译。 点击(此处)折叠或打开......【阅读全文】

阅读(404) | 评论(0) | 转发(0)
给主人留下些什么吧!~~
留言热议
请登录后留言。

登录 注册