假設模板類A被定義爲如下:環狀模板
template <typename T>
class A
{
B<T> b;
};
假設模板類B被定義如下:
template <typename T>
class B
{
A<T> a;
};
在理想情況下,這些類將被與內聯的實現獨立的頭文件中定義。但是,這會導致循環包容問題。一種解決方案是將模板類的實現放入cpp文件中。但是,這需要專門的模板實例化。
有沒有辦法保持內聯類的實現並避免循環包含依賴?如果可能的話,我想避免使用指針。
感謝,
山姆
您不能這樣做,因爲它需要無限量的內存。你必須在這裏使用指針或引用。 – 2012-05-03 23:13:16
@classdaknok_t是的,我認爲你是對的。我可能需要使用指針... –