2
我繼承了一些C++代碼,它讓我難堪。如何獲取模板化的WTL類對象的地址C++
有一個類聲明像這樣。
class CIENavigator : public CWTLAxControl<CIENavigator,IWebBrowser2>
{
public:
實例,像這樣
CIENavigator CIE;
CIENavigator * pCIE = &CIE;
獲取此編譯錯誤
1>.\IENavigator.cpp(446) : error C2440: 'initializing' :
cannot convert from 'IWebBrowser2 **' to 'CIENavigator *'
1> Types pointed to are unrelated; conversion requires
reinterpret_cast, C-style cast or function-style cast
雖然CIE被聲明爲CIENavigator,它認爲& CIE的類型是IWebBrowser2的**
如果我像這樣強制演員陣容:
CIENavigator CIE;
CIENavigator * pCIE = (CIENavigator *) &CIE;
它編譯,但指針確實是錯誤的指針。
我注意到類名出現在它自己的聲明中,但我不知道它的意義是什麼。 我沒有在類模板上。
如何獲得正確的CIENavigator對象(CIE)地址?
謝謝。這使我走上了正確的道路。 &被超載。 – user1347717 2012-04-22 01:52:33