- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:オペレータ定義について)
オペレータ定義について
このQ&Aのポイント
- オペレータ定義とは、クラスに[]が定義されていることを指します。
- Stringクラスの[]は、num番目の文字を返すためのものです。
- main()からStringクラスの[]を使用するには、Stringオブジェクトを作成し、[]を使って文字にアクセスします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
> 2の方は確認できたのですが、1は呼んでくれないみたいです。 strがconstではないからです。 const String str("ABC"); に対し str[n] すれば operator[](int) const が呼ばれます。
その他の回答 (1)
- επιστημη(@episteme)
- ベストアンサー率46% (546/1184)
回答No.1
String str; int n; .... char ch = str[n]; // 参照 str[n] = '?'; // 設定
質問者
お礼
ありがとうございます。 昨夜確認しました。 2の方は確認できたのですが、1は呼んでくれないみたいです。この現象についてもしおわかりになれば、捕捉御願いします。 なくても数日中に締め切ります。
お礼
お礼が大変遅れまして・・・さきほどやっと確認できました。確かにおっしゃるとおりでした。 専門家の方に回答いただけて、たすかりました。