Essential COM 答客問 (1) - virtual dtor
Essential COM 答客問 (1) - virtual dtor
侯捷 jjhou@ccca.nctu.edu.tw
2000.03.25 第一次發表於
清大.楓橋驛站(140.114.87.5).電腦書訊版(Computer/CompBook)
本文將於日後整理於 侯捷網站
侯捷網站:www.jjhou.com
----------------------------------------------------------------
pb wrote (1999/11/15) :
> 侯大哥您好:
> 看了您的"COM本質論"後,對於第一章的某段敘述
> 無法理解其意思,可否請您解惑.問題為:在第20頁
> 約16行之處寫著"不幸的是這樣會破壞interface的編譯器
> 獨立性,因為虛擬解構式在vtbl中的位置可能隨著編譯器
> 不同而不同", 我不懂的是如果虛擬解構式會因編譯器不同
> 而在vtbl中的位置不同,導致某些complier的client無法呼叫的話
> 那interface中其餘的virtual function也會有相同情形吧?為什麼
> 就可以正常運作呢??不知您是否瞭解我的意思?先謝謝您的回答
侯捷回覆:
對於 Don Box 這樣的敘述,我的想法是,或許編譯器對
"virtual functions 之 function pointer" 在 vtbl 中的位置,
是以 source code 中的排列次序為準,但對 virtual dtor 則
特別視之。
這只是我的揣測。看起來說服力好像滿薄弱的 :p
有沒有人可以補充?或是書上哪裡有提而我疏忽了?
-- the end
學生 王派斌
--
※ Origin: 楓橋驛站<bbs.cs.nthu.edu.tw> ◆ Mail: jjhou@ccca.nctu.edu.tw
CompBook 近期熱門文章
PTT數位生活區 即時熱門文章