c++で文字列に+=で一文字を追加する場合は"ダブルクォーテーションとシングルクォーテーションのどちらで囲むのか
Q&A
Closed
文字列sに文字aを追加しようとするとき、aは""と''どっちで囲みますか??
0 likes
Q&A
Closed
文字列sに文字aを追加しようとするとき、aは""と''どっちで囲みますか??
std::string
(std::basic_string<char>
) のメンバ関数の operator+=
は 4 種類のオーバーロードが用意されています。 文字列 (ヌル終端された char
型の配列) も文字 (char
型の値) も渡せるようになっているのでどちらで渡しても問題はありません。
一文字であることがわかっている状況であえて文字列として渡す意味はないので文字 (シングルクォーテーションで囲まれた文字リテラル) を渡すようにしたほうが一般的には自然であるように思われますが、挙動として必要を満たすかどうかだけでなくその状況についてプログラマの「意図」がわかりやすいほうが好ましいので
のどちらを意図しているのかというのもよく考えてみるべきでしょう。