Andrei Alexandrescu中寫道Modern C++ Design:什麼時候可以typeid返回不同類型的type_info實例?
通過
typeid
返回的對象具有 靜態存儲,所以你不必 擔心壽命問題。
安德烈繼續說:
標準不保證 的,比如每次調用,
typeid(int)
返回到相同的type_info
對象的引用。
即使標準不能保證這一點,這是如何在普通的編譯器中實現的,比如GCC和Visual Studio?
假設typeid
不泄漏(並且每次調用都返回一個新的實例),它是每個應用程序,每個翻譯單元,每個dll/so或者完全不同的一個「表」嗎?
有沒有時間&typeid(T) != &typeid(T)
?
我主要對Windows編譯器感興趣,但是對於Linux和其他平臺的任何信息也都很感激。
這種自由度的一個重要原因確實是DLL的問題。 – MSalters 2009-12-01 09:48:46