< < 深度探索C++模型> > 提问(第二章)(上)

原创 2002年10月23日 09:31:00
 

第二章:构造函数语意学

2.1 Default Constructor 的建构操作

1.       “explicit”C++中的作用是什么?(P39)

2.       在什么情况下, 编译器会合成一个”nontrivial default constructor”?(P41-47)

3.       编译器合成的”nontrivial default constructor”能满足程序的需要吗?为什么?(P42)

4.       C++各个不同的编译模块中,编译器如何避免合成多出多个default constructor?(P41)

5.       如果一个class里包含多个class member object 那么C++怎么调用这些objectconstructors?(P43)

6.       一个有virtual functionclass在被构造的时候,会发生什么事情?(P45)

7.       一个继承自virtual base classclass在被构造的时候,会发生什么事情?(P46)

8.       任何class如果没有定义default constructor 就会被合成出来一个,对吗?(47)

9.       编译器合成出来的default constructor会明确设定class内每一个member的默认值,对吗?(47)

2.2 Copy Constructor 的建构操作

1.  有三种情况,会以一个object的内容作为另一个class object的初值, 分别是什么?(P48)

2.  Memberwise initialization的过程是怎样的?(P49-P50)

3.  决定一个copy constructor是否为trivial的标准是什么?(P51)

4.  ”bitwise copy semantics”是什么?(52)

5.  什么时候一个class不会出现”bitwise copy semantics”?(53)

6.  为什么一个classvirtual function, 就不是”bitwise copy semantics” 主要是为什么?(P55)

7.  一个virtual base class 的存在为什么会使”bitwise copy semantics”无效?(P57-58)

《深度探索c++对象模型》学习笔记

1、c++的布局和存取时间成本?封装并未给c++带来任何的空间或执行期的不良后果,c++在布局和存取时间上的主要额外负担由虚拟化引起。包括: 1)virtual function机制。用以支持一个有...
  • will130
  • will130
  • 2016年05月31日 15:48
  • 286

< < 深度探索C++模型> > 提问(第二章)(下)

 2.3程序转化语意学1.  X是一个class, 已知有X x0; 那么, (1)X x1(x0); (2)X x2 = x0; (3)X x3 = X(x0); 有什么不同?各自的效率如何?(P6...
  • codingcoding
  • codingcoding
  • 2002年10月24日 09:37
  • 555

深度探索C++模型

C++对象模型之多态 所谓的多态,其实就是多种形态,简单地说当使用 父类的指针/引用调用重写的虚函数,当父类的指针/引用指向父类的对象时调用的是父类的虚函数,指向子类对象时调用的是子类的虚...
  • niukeming
  • niukeming
  • 2017年07月27日 20:33
  • 162

读“深度探索C++模型”的一些理解

(Owed by: 春夜喜雨 http://blog.csdn.net/chunyexiyu) 同事推荐读的这本书,读完发现正是自己想要的! 之前疑惑的一些东西,有赖于尝试或猜测的,读完之后就...
  • chunyexiyu
  • chunyexiyu
  • 2017年02月21日 22:27
  • 249

< < 深度探索C++模型> > 提问(第三章)(上)

 第三章:Data语意学1.  一个class的object的大小一般受到那三个因素的影响?(P84-P85)2.  一个空的class的大小是多少?为什么?(P84)3.  一个empty virt...
  • codingcoding
  • codingcoding
  • 2002年10月28日 09:34
  • 446

< < 深度探索C++模型> > 提问(第四章)(上)

 第四章.Function 语意学1.  C++支持的三种member functions是什么?(P140)4.1 Member的各种调用方式1.  Nonstatic member functio...
  • codingcoding
  • codingcoding
  • 2002年11月10日 11:45
  • 509

<<深度探索C++模型>>提问(第一章)

读了几遍>,每读一次都有不同的收获。自己也做了些笔记。这次,我想用提问题的形式来读,或许会有更好的效果。所以写了这些东西。这些我问题有些只要几句话,有些却需要几页来说明。每个问题后面是答案在>的页码。...
  • codingcoding
  • codingcoding
  • 2002年10月22日 09:42
  • 597

< < 深度探索C++模型> > 提问(第三章)(中)

 3.3 Data Member 的存取1.  存取static data member必须要通过指针或者一个对象吗, 为什么?(P95)2.   多继承或者虚继承对存取static data mem...
  • codingcoding
  • codingcoding
  • 2002年11月01日 23:37
  • 496

< < 深度探索C++模型> > 提问(第三章)(下)

 3.5 对象成员的效率1.  在没有把优化开关打开的时候,我们能够肯定一个程序的效率表现吗?为什么?(P127)2.  单一的继承会影响data member的存取效率吗?为什么?(P128)Lip...
  • codingcoding
  • codingcoding
  • 2002年11月10日 10:43
  • 460

深度探索c++对象模型(一)_关于对象

原博客地址:http://www.roading.org//develop/cpp/c对象面面观.html 学习C++应该看过不少关于C与C++的口水贴,以及关于各种对比C与C++效率比较的...
  • A_IIIIIIIII_A
  • A_IIIIIIIII_A
  • 2016年01月04日 11:31
  • 574
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:< < 深度探索C++模型> > 提问(第二章)(上)
举报原因:
原因补充:

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