天天看點

[翻譯] Effective C++, 3rd Edition, 附錄 B. 第二和第三版之間的 Item 映射

附錄 B. 第二和第三版之間的 Item 映射

作者:Scott Meyers

譯者:fatalerror99 (iTePub's Nirvana)

釋出:http://blog.csdn.net/fatalerror99/

Effective C++ 的第三版在很多方面與第二版不同,其中最引人注目的是它包含很多新的資訊。然而,第二版的大部分内容依然保留在第三版中,雖然經常會改變形式和位置。在後面幾頁的表格中,我展示了第二版 Items 中的資訊在第三版的哪裡可以找到,反之亦然。

這個表展示了一個資訊的映射,而不是文本的。例如,第二版的 Item 39 中的思想(“避免在繼承體系中做向下轉型 (cast down) 動作”)(此标題借用侯捷先生的第二版譯文——譯者注)現在可以在目前版本的 Item 27(“最少化 casting(強制轉型)”)中找到,即使第三版這個 Item 的文本和例子完全是新的。一個更極端的例子在于第二版的 Item 18(“努力讓接口完滿 (complete) 且最小化”)(此标題借用侯捷先生的第二版譯文——譯者注)。那個 Item 的主要結論之一是:不需要對 non-public(非公有)構件進行特殊通路的 prospective member functions(候選成員函數)一般應該成為 non-members(非成員)。在第三版中,通過不同的(更強的)論證達到相同的結果,是以第二版中的 Item 18 映射到第三版中的 Item 23(“用 non-member non-friend functions(非成員非友元函數)取代 member functions(成員函數)”),即使這兩個 Item 之間僅有的共同之處是它們的結論。 

Second Edition to Third Edition

2nd Ed. 3rd Ed. 2nd Ed. 3rd Ed. 2nd Ed. 3rd Ed.
1 2 18 23 35 32
2 - 19 24 36 34
3 - 20 22 37 36
4 - 21 3 38 37
5 16 22 20 39 27
6 13 23 21 40 38
7 49 24 - 41 41
8 51 25 - 42 39
9 52 26 - 43 44, 40
10 50 27 6 44 -
11 14 28 - 45 5
12 4 29 28 46 18
13 4 30 28 47 4
14 7 31 21 48 53
15 10 32 26 49 54
16 12 33 30 50 -
17 11 34 31

Third Edition to Second Edition

3rd Ed. 2nd Ed. 3rd Ed. 2nd Ed. 3rd Ed. 2nd Ed.
1  -  20  22  39  42
2  1  21  23, 31  40  43
3  21  22  20  41  41
4  12, 13, 47  23  18  42  -
5  45  24  19  43  -
6  27  25  -  44  42
7  14  26  32  45  -
8  -  27  39  46  -
9  -  28  29, 30  47  -
10  15  29  -  48  -
11  17  30  33  49  7
12  16  31  34  50  10
13  6  32  35  51  8
14  11  33  9  52  9
15  -  34  36  53  48
16  5  35  -  54  49
17  -  36  37  55  -
18  46  37  38
19  pp. 77-79  38  40

繼續閱讀