C++では、InputIterators、ForwardIterators、BidirectionalIteratorsを比較するのに '>'または '<'を使用できないのはなぜですか?ただし、RandomAccessIteratorsを '>'または '<'と比較することができます(例:std :: vector)。これの背後にある理由は何ですか?C++イテレータに関する質問
また、なぜイテレータのコンテンツを再生できないのですか? 「cout < < itr < < endl;動作しません。これの背後にある理由は何ですか?イテレータはポインタによく似ていますが、ポインタを使うことはできますが、イテレータは使用できません。なぜですか?
一般に、イテレータとポインタの本質的な違いは何ですか?以前は似ていると思っていましたが、C++を理解する次のレベルに到達するためには、これを理解しなければならないと思います。
質問#2:すばらしい答えをいただきありがとうございます。イテレータに関してもう1つ質問があります。 イテレータが範囲外になると、C++が "50397953"のようなものを出力するのはなぜですか? NULLや '\ 0'のようなものを出力してはいけませんか?
2つのフォワードイテレータに対して 'itr1
Beta
ありがとうベータ。これは自然な答えです! – Thenewstockton