4

我有一个类包含像这样的不同类型的变量。

class Field
{
  union DATATYPE
  {
    int intValue;
    double doubleValue;
    char* charValue;
    MyClass* MyClassValue;
  } Value;
  ~Field()
  {
    delete[] Value.charValue;
    delete Value.MyClassValue;
  }
}

这个析构函数给出错误。由于某些对象没有初始化 charValue,因此尝试删除它会引发错误。

4

0 回答 0