2011-10-20 55 views
1

標準是否規範了對象的實現細節?我聽說在一些編譯器上它是不同的。即使是這樣,是否值得通過lippman獲得「在C++對象模型中」以及如何實現?對象模型的實現佈局

回答

3

我不能談論這本書,因爲我還沒有親自閱讀它,但它是一種常見的推薦,所以不會受傷。

爲標準,它不要求特定對象的佈局,但只放在程序的行爲約束,但即使認識一個實施將幫助您瞭解在幕後發生的事情。對於大多數情況,不同的編譯器採用類似的方法

作爲一個例子,動態功能調度機制不是由標準,只有行爲定義的,但所有的編譯器實現它基於虛擬函數表。表格的佈局(即方法的組織方式,表格前後的額外數據)可能不同,但動態分派的問題是相同的,並且解決方案足夠相似以至於理解通常會幫助您理解總體問題。