-4

可能重复:
在 C++ 中,函数名前的波浪号“~”表示什么?

~在 C++ 中,函数前面是什么意思:

class list
{
    ...other stuff...
public:
    list();
    ~list();
    void insertFront(const TYPE&);
    TYPE deleteFront();
    void insertRear(const TYPE &);
    int isEmpty() const;
    void traverse() const;
};
4

2 回答 2

5

这意味着该函数是定义它的类的析构函数。名称的其余部分(~之后)必须与类的名称匹配。

于 2012-10-15T03:50:34.193 回答
1

它是一个析构函数。

析构函数在对象被销毁时调用,就像在创建对象时调用构造函数一样。

如果您使用创建对象new,则在调用时将调用析构函数delete

如果您在堆栈上创建了对象,则当您的对象超出范围时将调用析构函数。

您拥有它的原因是在对象消失之前执行任何资源清理、通知或其他所需的工作。为对象本身保留的内存将在析构函数的整个持续时间内有效。

于 2012-10-15T03:54:10.703 回答