我目前正在處理類型模板的節點,當我將這些節點與普通類中的數據進行比較時,我遇到了問題。不匹配的兩種數據類型是線路root->data = item;
root
是Node<string> *TreeParser::root
,其中item
是const Node <string> &
。當查看以前的工作,其中兩個類都是類型模板時,這是有效的。但是,當我將類更改爲非模板類型時,此代碼不再有效。我怎樣才能讓這兩種不同類型的數據互相交流,而無需將我的課程改爲鍵入模板。這裏是我的示例代碼:C++ - 比較模板和類之間的數據類型
template <typename T>
struct Node {
T data;
Node* lLink;
Node* rLink;
};
class TreeParser{
public:
void insert(const Node<string>& item);
private:
Node<string>* root{ nullptr };
};
void TreeParser::insert(const Node<string>& item){
if (root == nullptr){
root = new Node<string>();
root->data = item;
return;
}
else
//do something
}
謝謝你的回覆,當你以這種方式瀏覽時,會有很大的意義。 –