我应该使用delete重载或del()函数或其他东西来释放类成员吗?
class Field
{
private:
size_t* square = new size_t[5];
public:
void del()
{
delete[] square;
}
void operator delete (void* p)
{
delete[] reinterpret_cast<Field*>(p)->square;
}
};
int main()
{
Field f;
delete &f;
//or
f.del();
}
Run Code Online (Sandbox Code Playgroud) c++ operator-overloading user-defined-functions class-members