所以对于我的代码,我想构建一个四叉树。 这意味着我必须细分一个数据集。 为了解决这个问题,我想要有外部节点(A类)和内部节点(B类),以及一种将外部节点转换为内部节点的方法。
有没有一种方法让一个a类以一种可以从a类本身内部进行转换的方式转换成B类,同时保留指向它的指针?
我很抱歉,但我不知道如何更清楚地解释这一点。
class A{
public:
int a;
int b;
int c;
void convert(){
*convert class A into class B: conserving int a and int b, and discarding int c*
}
};
class B{
public:
int a;
int b;
void* One; // can be a pointer to an instance of class A or class B
void* Two; // can be a pointer to an instance of class A or class B
};
编辑:谢谢你的反馈,我会重新考虑我的策略。
您可能只需要一个类:
class AB
{
int a;
int b;
int c;
bool amIABObject;
};
然后,只需更改布尔值来记住你是哪种“类型”。