在对象的定义中创建对象
Create an object within the object's definition
我有一个比较两个对象的类,但我希望它能够在自身内部比较自身(如果这有任何意义的话)。换句话说,我希望一个可比性是两个可比对象的集合,并允许它们嵌套。例如,可比的可以是{A,B},其中A和B都是可比的,所以A可以是{C,D},B可以是{E,F},所以父可比的将是{{C,D},{E,F}},允许无限嵌套。但是,我知道这在本例中是不可能的:
class Comparable
{
Comparable A, B;
public:
Comparable(Comparable A, Comparable B)
{this->A = A; this->B = B};
};
有没有一种方法,最好是使用类,可以允许这样做?
您只能使用指针来执行此操作:
class Comparable
{
Comparable *A, *B;
public:
Comparable(Comparable *A, Comparable *B)
{this->A = A; this->B = B};
};
请记住,如果这样做,您将不得不担心内存管理,例如何时何地应该取消分配这些对象。智能指针是必经之路。
相关文章:
- 使用基类指针创建对象时,缺少派生类析构函数
- 如何创建对象函数指针C++映射?
- 如何在创建自定义迭代器时获得 std::p air 的第一个和第二个?
- C++创建对象数组
- 在 C++ 的 Switch Case 中创建对象后对对象调用方法
- 如何获取在 main() 函数中构造的类的创建对象?
- 基于文件中的条目创建对象
- 错误:创建对象后无法分配区域
- C++ 通过输入创建对象
- 堆还是堆栈用于创建对象?
- 使用 C++ 创建对象数组
- 创建用户定义的复制构造函数时无法创建对象
- 在std::list中就地创建自定义类型对象
- 带有本地创建对象的gcc未定义引用
- 在对象的定义中创建对象
- QT - 拖放 - 在自定义场景上创建自定义图形对象的位置
- 从数据库创建自定义对象
- 用于从工厂类创建对象名称的未定义引用
- 创建自定义类型对象的向量
- 动态创建自定义对象类型的数组