1
現在、私の四角形リストcontatinerの.begin()に++演算子をオーバーロードしようとしています。演算子のオーバーロード
私は私のHPPファイルに私は、次のしている:
template <typename T_>
class sq_list
{
public:
typedef T_* iterator;
iterator _itr;
square_list(iterator n) : _itr(n) { }
sq_list operator ++ (sq_list<int> lhs) {
return lhs++;
}
};
現在、これは正方形のリストオブジェクトの内部でイテレータを置くために私を必要とします。 私が必要とするのは、.cppファイルが++ name.begin()を実行するときに++メソッドを呼び出すことです。その値を自分のコンテナの中に入れてからそのコンテナをインクリメントするのではなく、 オーバーロードされた関数を++ name.begin()でのみ動作させて、イテレータをsq_listコンテナに入れる必要がなくなります。
ありがとうございます!
ご質問はありますか? –
@LuchianGrigore私の++オペレータは、私の四角形のリストオブジェクトに入れるのではなく、イテレータ自体を操作するだけです。 – user1219627
'演算子++ 'は2つの' sq_list'パラメータ(暗黙の 'this'と' lhs' )?あなたがイテレータのために 'operator ++'をオーバーロードしたいと思っているものから(あなたはそのコードでは実行していません)btw。 'iterator'はポインタなので、あなたはなぜあなたは演算子をオーバーロードする必要がありますか?ポインタには既に 'operator ++'があります – Grizzly