Jar*_*Par 34
你不能.在C++中,每个类只有一个析构函数.
你可以做的是创建一个私有的析构函数,然后有几个公共方法以新的和有趣的方式调用析构函数.
class Foo {
~Foo() { ... }
public:
DestroyFoo(int) { ... };
DestroyFoo(std::string) { ... }
};
Run Code Online (Sandbox Code Playgroud)
重载意味着有几个具有相同名称的函数,它们采用不同的参数。喜欢swap(int &a, int &b)和swap(double &a, double &b)。析构函数不接受任何参数。重载它没有意义。
如果您需要根据某些情况在销毁对象时做不同的事情,那么您只需要在析构函数中使用适当的 if 语句来检查这些情况。
| 归档时间: |
|
| 查看次数: |
19912 次 |
| 最近记录: |