比方說,我有一個基類和派生類,而這需要一個指針的STL向量基類的函數:自動轉換指針列表派生類的指針列表基類
有沒有辦法將指針列表傳遞給派生類?即:
vector<B*> vb;
// ... add pointers to vb ...
foo(vb);
上面將導致以下編譯器錯誤:
error: could not convert ‘vb’ from ‘std::vector<B*>’ to ‘std::vector<A*>’
即使B *可轉換爲A *。
最後,如果有普通指針的解決方案,它是否也可以與boost共享指針一起工作?
爲了讓事情在我心中更加清晰,這種方法既不屬於'Base'類也不是「Derived'類吧?我的意思是,有模板的關鍵在於具有類型獨立編程。不是嗎? – Recker