C++ 如何将泛型值设置为NULL?

C++ 如何将泛型值设置为NULL?,c++,C++,我正在做一个2-3树类,我的BNode类是一个泛型类,所以它可以存储任何类型的数据。所以我遇到了这种情况:我有一个3节点(有2个值和3个子指针),理论上我必须把3节点分解成2个节点,每个节点只能有一个值和2个子指针。这里有一个问题,在编程中,您是否必须创建2个新节点,每个节点将保存3节点的每个值?或者您只能创建一个新节点,并通过将第二个值设置为NULL来重用3节点?如果可以的话,你将如何设置NULL,认为你拥有的是一个通用的值。谢谢。那么您的2节点和3节点是不同的类型?在这种情况下,我肯定会创建

我正在做一个2-3树类,我的BNode类是一个泛型类,所以它可以存储任何类型的数据。所以我遇到了这种情况:我有一个3节点(有2个值和3个子指针),理论上我必须把3节点分解成2个节点,每个节点只能有一个值和2个子指针。这里有一个问题,在编程中,您是否必须创建2个新节点,每个节点将保存3节点的每个值?或者您只能创建一个新节点,并通过将第二个值设置为NULL来重用3节点?如果可以的话,你将如何设置NULL,认为你拥有的是一个通用的值。谢谢。

那么您的2节点和3节点是不同的类型?在这种情况下,我肯定会创建2个新的2节点


否则你可以使用

我认为两者都有可能。。。但是我认为如果你对整个树使用3节点结构会更好。。您可以使用flag(带bool或int或任何东西)来确定其类型(3节点或2节点)

好的,您可以使用指向null的指针,否则使用您的值+bool“已填充”。如果我对其进行编码,并且如果每个节点colud不超过8个值,我使用8个值的数组+字节已填充,并使用&运算符来获取每个位。