この代入オーバーロード関数の実行を完了するのを手伝ってください。
指示は次のとおりです。
ソース文字列をコピー先文字列にコピーする代入演算子 (=)。宛先のサイズは、ソースと同じになるように調整する必要があることに注意してください。
加算 (+) 演算子と代入 (=) 演算子の両方がカスケード操作に対応している必要があります。これはString3 = String1 + String2
、またはString1 = String2 = String3
機能するはずであることを意味します。
ここに私の.cppファイルがあります:
int MyString::Length()
{
int counter(0);
while(String[counter] != '\0')
{
counter ++;
}
return (counter);
}
MyString& MyString::operator=(const MyString& rhs)
{
if(this != &rhs)
{
delete [] String;
String = new char[rhs.Length()];
for(int i = 0; i <rhs.Length()+1 ; i++)
{
String[i] = rhs.String[i];
}
}
return *this;
}
これは、main.cpp ファイルで次のように呼び出されます。
文字列1=文字列2=文字列3;
私は何かが欠けているように感じます.助けて!!