2

次のことをやりたい

int p = "xyz"

3、つまり=の右側の文字列の長さを含める必要があります。

char *データメンバーを使用してクラスStringを作成しようとしましたが、演算子をオーバーロードしているクラスの少なくとも1つのオブジェクトを渡す必要があるため、=演算子のオーバーロードに問題がありました。

助けてください。

私は次のことをしようとしました:

friend void operator=(int, char*)

ただし、クラス型の引数がないため、機能しません。

4

1 に答える 1

10

これを行うことは不可能でありoperator=、整数型ではオーバーロードできません。この回答を参照してください。

を使用する場合std::string、解決策は簡単です。

std::string p = "abc";
int l = p.size(); // Better than l = p, because self describing
于 2012-12-06T12:49:22.010 に答える