簡體   English   中英

二叉樹,其中數據是不同的繼承類型

[英]Binary Tree where data is different inherited type

我有一個基類,有兩個繼承自這個的類,另外兩個類繼承自這些類。 我需要使用二叉樹來存儲數據,但是我不太明白如何將數據存儲在樹中。 在我看到的例子中,數據只是一個int data但我的最多可以有四種不同的類型。

如果要在樹中存儲的所有類型都派生自相同的基類,則數據成員可以是指向該基類的指針。 這樣,指針可以指向基類的對象或任何派生類型。

例如:

class Node
{
...
private:
    Vehicle* mData;
};

然后你可以做類似的事情:

node->SetData(new Car);
otherNode->SetData(new Moped);

或者你擁有的任何接口,它將mData指針設置為指向從Vehicle派生的類樹中某種類型的對象。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM