很抱歉,如果这是一个初学者问题,但我无法在任何地方找到答案 - 我在C++中遇到了一个类析构函数,其中有
--num_strings;
Run Code Online (Sandbox Code Playgroud)
我想知道双击意味着什么.任何帮助表示赞赏,谢谢.以下是标头和cpp文件的一部分:
// strngbad.h
#include <iostream>
class StringBad
{
private:
char * str;
int len;
static int num_strings;
public:
StringBad(const char * s);
StringBad();
~StringBad();
};
Run Code Online (Sandbox Code Playgroud)
// strngbad.cpp
#include <cstring>
#include "strngbad.h"
using std::cout;
....
....
....
StringBad::StringBad(const char *s)
{
len = std::strlen(s);
str = new char[len + 1];
std::strcpy(str, s);
num_strings++;
}
StringBad::~StringBad()
{
--num_strings;
delete [] str;
}
Run Code Online (Sandbox Code Playgroud)
-它是前缀减量运算符,它意味着你没有从值中删除一个.
--num_strings;
Run Code Online (Sandbox Code Playgroud)
它完全一样:
num_strings=num string -1;
Run Code Online (Sandbox Code Playgroud)