0
是以下幾種可能:模板類容器指針本身
template<class Container>
class TreeNode
{
Container mChildren;
}
TreeNode<std::vector<boost::shared_ptr<TreeNode>> myTreeNode;
是以下幾種可能:模板類容器指針本身
template<class Container>
class TreeNode
{
Container mChildren;
}
TreeNode<std::vector<boost::shared_ptr<TreeNode>> myTreeNode;
不喜歡你做。 TreeNode不是一個類,而是一個類模板。 我在現在着急所以這可能不是最簡單的或優雅的方式,但它是可能的:
#include <vector>
using namespace std;
class Container {};
template<class Container>
class TreeNode
{
Container mChildren;
};
class TreeNodeWrapper;
typedef TreeNode<std::vector<TreeNodeWrapper*> > recursiveTreeNode;
class TreeNodeWrapper : public recursiveTreeNode {
};
recursiveTreeNode myTreeNode;
什麼是你的編譯器告訴你嗎? – KevenK 2010-12-15 15:43:11
發出以下錯誤:錯誤C3203:'TreeNode':未經專門處理的類模板不能用作模板參數'T'的模板參數,預期實際類型 – user152508 2010-12-15 15:50:31