C++相談室 part51
■ このスレッドは過去ログ倉庫に格納されています
0323315
2006/07/25(火) 06:14:33class iterator {
public:
インターフェースいろいろ
private:
class iterator_impl;
iterator_impl* m_impl;
};
class iterator::iterator_impl : public 任意のコンテナ::iterator {
実装いろいろ
};
みたいにするのが楽なのかなぁ。
> イテレータを使うような操作をコンテナを持つクラスのメンバ関数にすることを先に検討するべき。
なるほど。なんとなく理解できます。
でも今回はコンテナを内部に複数持つクラスを柔軟にSTLのアルゴリズム等に渡したいなぁと。
たとえば
int xsum = std::accumulate(p->xbegin(),p->xend());
int ysum = std::accumulate(p->ybegin(),p->yend());
int zsum = std::accumulate(p->zbegin(),p->zend());
みたいに。
■ このスレッドは過去ログ倉庫に格納されています