• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:オペレータ定義について)

オペレータ定義について

このQ&Aのポイント
  • オペレータ定義とは、クラスに[]が定義されていることを指します。
  • Stringクラスの[]は、num番目の文字を返すためのものです。
  • main()からStringクラスの[]を使用するには、Stringオブジェクトを作成し、[]を使って文字にアクセスします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

> 2の方は確認できたのですが、1は呼んでくれないみたいです。 strがconstではないからです。 const String str("ABC"); に対し str[n] すれば operator[](int) const が呼ばれます。

jbarkin
質問者

お礼

お礼が大変遅れまして・・・さきほどやっと確認できました。確かにおっしゃるとおりでした。 専門家の方に回答いただけて、たすかりました。

その他の回答 (1)

回答No.1

String str; int n; .... char ch = str[n]; // 参照 str[n] = '?'; // 設定

jbarkin
質問者

お礼

ありがとうございます。 昨夜確認しました。 2の方は確認できたのですが、1は呼んでくれないみたいです。この現象についてもしおわかりになれば、捕捉御願いします。 なくても数日中に締め切ります。

関連するQ&A