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

类别:VC语言 点击:0 评论:0 推荐:
 

2.3程序转化语意学

1.  X是一个class, 已知有X x0; 那么,

(1)X x1(x0);

(2)X x2 = x0;

(3)X x3 = X(x0); 有什么不同?各自的效率如何?(P61, P70)

2.  把一个class object 当作参数传给一个函数的时候,编译器会怎么做?(P62-P63)

3.  一个函数返回一个class object的时候,编译器会怎么做?(P63)

4.  一个函数,

X bar(const T& y, const T& z)

{

  return X(y, z);----------------L1

}

请问L1这一句这么写有什么效果?(65-66)

5.  NVR优化的过程是什么?好处是什么?(P66-P67)

6.  编译器实施NVR优化的必要条件是什么?(P67)

7.  NVR被批评的原因有那些?(P68-P70)

8.  什么时候应该自己写”Copy constaructor”?原因是什么?(P72-P73)

 

2.4成员们的初始化队伍

1.  什么情况下必须使用一个”initialization list”?(P74-P75)

2.  “member initialization list”是一组函数调用吗?(P76-P77)

3.  “member initialization list”的调用顺序是根据什么来排的?(P77)

4.  “member initialization list”被放在函数的什么地方?(P79)

5.  在“member initialization list”中, 能否用一个member function 来设定一个member的初值?应该注意些什么?(P79-P80)

本文地址:http://com.8s8s.com/it/it2229.htm