私はなぜ尋ねることを知っていますか?わからないので、このサイトにとって悪い質問です。しかし、私はそれを口語的な質問の代わりとして意味します、いくつかの考えられる理由は何ですか?
当然、私は自分が書いていることに気づきました。
foo->[i];
そしてそれがうまくいかなかったことを知って驚いた。私は書くつもりでした:
(*foo)[i];
私が言っていることはすでにほとんどわかっていると思いますが、明確にするために、私は考えました
bar.subscript(i);
foo->subscript(i);
に類似します
bar.operator[](i);
foo->operator[](i);
しかし、そうではないようです。なんで?私は何か間違った見方をしているに違いないと確信していますが、何を理解することはできません。私は理論をほとんど知らないので、素人の説明をいただければ幸いです。
しかし、私の例えに明らかな誤りがない場合、言語の設計者がオペレーターを除外した理由として考えられるものは何ですか?あいまいですか?(もしそうなら、何と間違えられるのでしょうか?)
@chrisの推奨に従って、いくつかのコメントを編集に取り入れたいと思います。私は本来あるべきほど明確ではなかったからです。
OPは、2つの組み合わせであるoperator->[]を提案しています。
–クリス
彼は、自分が書き込もうとしているコードが機能しない理由ではなく、自分が欲しいものが存在しない理由を尋ねています。
–マシュー'歯車'オーランド