标签:
1。定义式的任务是提供编译器一些声明式所遗漏的细节。对对象而言,定义式是编译器为此对象拨发内存的地点。 对function或者 function template而言,定义式提供了代码本体。对class 或者 class template 而言,定义式列出他们的成员。
2. 所谓default构造函数是一个可被调用而不带任何实参者。这样的构造函数要不没有参数,要不就是每个参数都有省缺值。
3 . explicit 可以阻止类执行隐式类型转换,但是类依旧可以进行显示类型转换。
4 . copy 构造函数被用来 “以同型对象初始化自我对象”。 copy assignment 操作符被用来 “从另一个同型对象中拷贝其值到自我对象”。 当看到赋值符号时请小心,因为"="语法也可以用来调用copy构造函数:
Widget w3 = w2;
如果一个新对象被定义,一定会有一个构造函数被调用,不可能调用赋值操作。如果没有新对象被定义,就不会有构造函数被调用,那么当然是赋值操作被调用。
5. copy 构造参数定义了一个对象如何 passed by value(以值传递)。以 by value传递用户自定义类型通常是一个坏主意, pass-by-reference-to-const 往往是比较好的选择。
标签:
原文地址:http://www.cnblogs.com/thorngirl/p/4311678.html