The Blog of Nobody

Welcome! You are in the middle of nowhere. Windows Vista + Safari is recommended.
posts - 37, comments - 157, trackbacks - 0, articles - 0
  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

04 2007 档案

     摘要: 劳动者万岁!
在一个对象为自己赋值时,要确保operator=可以正常地运行。可以使用的技术有:比较源对象和目标对象的地址、谨慎安排语句、以及“复制并交换”。
在两个或两个以上的对象完全一样时,要确保对于这些重复对象的操作可以正常运行。
  阅读全文

posted @ 2007-04-30 18:38 ★ROY★ 阅读(721) | 评论 (1)  编辑 |

     摘要: 让赋值运算符返回一个指向*this的引用。
  阅读全文

posted @ 2007-04-28 20:35 ★ROY★ 阅读(671) | 评论 (4)  编辑 |

     摘要: 在程序进行构造或析构期间,你绝不能调用虚函数,这是因为这样的调用并不会按你所期望的执行,即使能够顺利执行,你也不会觉得十分舒服。
  阅读全文

posted @ 2007-04-27 22:37 ★ROY★ 阅读(924) | 评论 (4)  编辑 |

     摘要: 永远不要让析构函数引发异常。如果析构函数所调用的函数会抛出异常的话,那么在析构函数中要捕捉到所有异常,然后忽略它们或者终止程序。
在一次操作中,如果一个类的使用者有能力对抛出异常作出反应,那么这个类应该提供一个常规的函数(而不是析构函数)来进行这一操作。
  阅读全文

posted @ 2007-04-22 14:00 ★ROY★ 阅读(900) | 评论 (3)  编辑 |

     摘要: 从前有一个村庄,村庄里有若干个村民,村民都非常的聪明,对于各种复杂的问题他们都能够仔细的观察,并能做出你所能做的一切分析和判断,他们每个人都养且仅养一条狗。有一天,所有的村民接到了一条确切的消息:村里的狗中有若干条得了一种病(这种病不会传染)...  阅读全文

posted @ 2007-04-21 18:15 ★ROY★ 阅读(306) | 评论 (6)  编辑 |

     摘要: 应该为多态基类声明虚析构函数。一旦一个类包含虚函数,它就应该包含一个虚析构函数。
如果一个类不用作基类或者不需具有多态性,便不应该为它声明虚析构函数。
  阅读全文

posted @ 2007-04-20 21:59 ★ROY★ 阅读(639) | 评论 (0)  编辑 |

     摘要: 为了禁用编译器自动提供的功能,须将相关的成员函数声明为private的,同时不要实现它。使用一个像Uncopyable这样的类来完成这一工作。
  阅读全文

posted @ 2007-04-18 23:21 ★ROY★ 阅读(612) | 评论 (1)  编辑 |

     摘要: 你编写的每个类几乎都有一个或多个构造器、一个析构器、和一个赋值运算符。这没有什么好稀奇的。这些是编写一个类所必需的一些函数,这些函数控制着类的基本操作,其中包括使一个对象由概念变为现实并且确保这一对象得到初始化,以及从系统中排除一个对象并对其进行恰当的清理工作,还有为一个对象赋予一个新的值。在这些函数中出错将为你的类带来深远而重大的负面影响,这自然是令人扫兴的,所以写好这些函数是十分重要的。这些函数构成了类的中枢神经。这一章中将为你介绍怎样编写这些程序才会使你的类更加优秀。
  阅读全文

posted @ 2007-04-17 19:34 ★ROY★ 阅读(673) | 评论 (1)  编辑 |

     摘要: 为了避免在对象初始化之前使用它,你仅仅需要做三件事。第一,手动初始化基本类型的非成员对象。第二,使用成员初始化表来初始化对象的每一部分。最后,初始化次序的不确定性会使定义于不同置换单元中的非局部静态对象之间产生冲突,要避免这样的设计。
  阅读全文

posted @ 2007-04-15 20:23 ★ROY★ 阅读(831) | 评论 (3)  编辑 |

     摘要: 今天是4月12日  阅读全文

posted @ 2007-04-12 21:19 ★ROY★ 阅读(130) | 评论 (0)  编辑 |

     摘要: const 是一个令人赞叹的东西。对于指针和迭代器,以及指针、迭代器和引用所涉及的对象,函数的参数和返回值,局部变量,成员函数来说, const 都是一个强大的伙伴。只要可能就可以使用它。你会对你所做的事情感到高兴的。
  阅读全文

posted @ 2007-04-11 19:55 ★ROY★ 阅读(927) | 评论 (3)  编辑 |

     摘要: 对于简单的常量,应该尽量使用 const 对象或枚举类型数据,避免使用 #define 。
对于类似程序的宏,尽量使用内联函数,避免使用 #define 。
  阅读全文

posted @ 2007-04-04 21:58 ★ROY★ 阅读(1316) | 评论 (0)  编辑 |

     摘要: 经常被念错或者错误理解的几个词汇。包括Java,Delphi,NBA,Tablet PC等  阅读全文

posted @ 2007-04-03 19:51 ★ROY★ 阅读(186) | 评论 (1)  编辑 |

     摘要: 无论你有怎样的编程背景,都需要用一些时间和精力来适应C++。 C++是一门强大的编程语言,它拥有数不尽的实用功能,但是在你能够熟练地驾御C++的力量,并且恰当而高效地利用这些功能之前,首先你要适应C++做事情的方式。这本书自始至终都是在介绍如何顺利地完成这一适应过程,但是相比较大多数议题而言,还有一些更为基础的内容,本章向大家介绍的就是这些更为基础的东西。
  阅读全文

posted @ 2007-04-02 21:12 ★ROY★ 阅读(970) | 评论 (6)  编辑 |