template <class T>
class Stack
{
public:
Stack(int = 10) ;
~Stack() { delete [] stackPtr ; } //<--- What does the "~" signify?
int push(const T&);
int pop(T&) ;
int isEmpty()const { return top == -1 ; }
int isFull() const { return top == size - 1 ; }
private:
int size ;
int top ;
T* stackPtr ;
} ;
最佳答案
它是析构函数,它销毁实例,释放内存等等。
这是来自 ibm.com 的描述:
析构函数通常用于释放内存并在对象被销毁时对类对象及其类成员进行其他清理。当类对象超出范围或被显式删除时,将调用该类对象的析构函数。
见 https://www.ibm.com/support/knowledgecenter/en/ssw_ibm_i_74/rzarg/cplr380.htm
关于c++ - 在 C++ 中,函数名称前的波浪号 "~"表示什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1395506/