<<
の演算子オーバーロードがあり、char*
をCスタイルの文字列として解釈します。 char*
が単一の文字を指している場合、どのようにストリームに出力するのですか?<< operator with char with pointer
ch
<<
の演算子オーバーロードがあり、char*
をCスタイルの文字列として解釈します。 char*
が単一の文字を指している場合、どのようにストリームに出力するのですか?<< operator with char with pointer
ch
タイプchar*
であり、実際には単一の文字を指している場合、式の型がchar
になるように、*ch
を使用します。オペレーターは何をすべきかを知るでしょう。あなたがchar
ため<<
をオーバーロードする必要があると思い、その場合(なし*
)の場合と表現でそれを使用する前に、あなたのchar*
間接参照
char c=42;//sadly I could not use my favourite constant 666
char* pc=&c;
cout << *pc;
char x = 'a';
char *p = &x;
stream << *p;
。
-1は、これが必要でないだけでなく、許可もされていません。 2つの引数のうちの少なくとも1つが定義した型である演算子のみをオーバーロードする必要があります。 – MSalters
オペランドの反対側で使用されていたタイプ(またはそのタイプ)は誰もいませんでした。 –
この回答には注意が必要ですか? –
@コードモンキー:拡大するには何がありますか? –
あなたの投稿は、SO自動エンジンごとに低品質の投稿として届きました。私はあなたが説明のようにあなたの答えにもっと多くを加えることができると思います。 –