string operator + (const string &s, char *lit);
string operator + (const string &s, char *lit)
{
string temp;
temp.len = s.len+strlen(lit);
temp.str = new char[temp.len+1];
strcpy(temp.str, s.str);
strcat(tmep.str, lit);
return temp;
}
これは、文字列クラスをオーバーロードする例として、教授からサンプル コードとして提供されたものです。事は、私がそれをコンパイルすると、それは言う
std::string operator+(const string&, char*)’ must take either zero or one argument
なぜそれがコンパイルされないのだろうか?引数は 1 つだけです。しかし、2つかかりません。ありがとう。