More Effective C++之14

原创 2006年06月03日 20:22:00
条款14:明智运用exception specifications
       考虑如下代码:

       class UnexpectedException{};

       void convertUnexception()

{

       Throw UnexpectedException();

}
set_unexpected(convertUnexception);
这是将未知异常转换成已知异常的方法。但是这不够。因为最好的办法还是不用exception specifications;我没有看出来exception specifications带来的所谓好处,真是讽刺。

《More Effective C++》重点摘要二:操作符

对定制的“类型转换函数”警觉。两种函数允许编译器执行类型转换:1)单变量constructors;2)隐式类型转换操作符。第一种函数可以是明确只有一个单变量的constructor,也可以是拥有除第一...

more effective c++之Item M1:指针与引用的区别

1.参数为引用不用判断为空,指针需要判断空指针; 2.有些函数返回应用比返回指针从语法和形式上更好,例如重载operator [ ]。 指针与引用看上去完全不同(指针用操作符“*”和“->...

More Effective C++读书笔记(五)

技术 条款25:将构造函数和非成员函数虚拟化 1.虚拟构造函数是指能够根据输入给它的数据的不同而建立不同类型的对象,比如从磁盘读取对象信息。 2.被派生类重定义的虚拟函数不用必须与基类的虚拟函数...
  • necrazy
  • necrazy
  • 2013年11月08日 10:11
  • 814

《More Effective C++》7:千万不要重载 &&, ||, 和 ,操作符

《More Effective C++》Rule7:千万不要重载 &&, ||, 和 ,操作符

看了下More Effective C++,做了点小结

今天主要是学习More Effective C++ 1) 指针和引用的使用 指针:在对象为空时;不同的时刻指向不同的对象时 引用:总指向一个对象,并且一旦指向这个对象就不再改变时; 当时重载某个...

前置和后置操作符的区别(More Effective_C++_6(运算符))

++和–的原理类似,下面仅++操作符来分析前置和后置的区别先看一段代码:class A{ pubilc: A& operator++();//前置++ const A& operator++(int)...

【more effective c++读书笔记】【第5章】技术(2)——限制某个class所能产生的对象数量

一、允许零个对象 每当产生一个对象时会有一个构造函数被调用,因此阻止某个类产出对象的最简单方法就是将该类的构造函数声明为private。 例子: class CantBeInstantiated{ p...

More Effective C++ ——01_指针与引用的区别

条款一:指针与引用的区别  指针与引用看上去完全不同(指针用操作符’*’和’->’,引用使用操作符’.’),但是它们似乎有相同的功能。指针与引用都是让你间接引用其他对象。   问题:你如何决定在什么...

More Effective C++----(7)不要重载"&&"、"||"、","

Item M7:不要重载"&&"、"||"、"," 与C一样,C++使用布尔表达式短路求值法(short-circuit evaluation)。这表示一旦确定了布尔表达式的真假值,即使还有部分表...

利用重载避免隐式类型转换(More Effective C++_21(效率))

class UPInt { // unlimited precision  public: // integers 类  UPInt();  UPInt(int value);  ... };//有关...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:More Effective C++之14
举报原因:
原因补充:

(最多只允许输入30个字)