最終更新日時:
が更新

履歴 編集

Adjacency Iterator Adaptor

Defined in header boost/graph/adjacency_iterator.hpp

隣接イテレータ・アダプタは out_edge_iterator を隣接イテレータに変形する。すなわち、辺の方々を巡回するイテレータを取り、それらの 終点 の方々を巡回するイテレータを作成する。このアダプタと共に Incidence Graph をモデルとするグラフ型を取り、Adjacency Graph によって要求される能力を付け加えるのは些細なことである。

Synopsis

namespace boost {
  template <class Graph, class VertexDescriptor, class OutEdgeIter>
  class adjacency_iterator_generator {
  public:
    typedef iterator_adaptor<...> type;
  };
}

Example

下記は adjacency_iterator_generator クラスの使い方の例である。

#include <boost/graph/adjacency_iterator.hpp>

class my_graph {
  // ...
  typedef ... out_edge_iterator;
  typedef ... vertex_descriptor;
  typedef boost::adjacency_iterator_generator<my_graph, vertex_descriptor, out_edge_iterator>::type adjacency_iterator;
  // ...
};

Template Parameters

パラメータ 説明
Graph グラフ型で、それは Incidence Graph をモデルとしなければならない。
VertexDescriptor これは graph_traits<Graph>::vertex_descriptor と同じ型で なければならない。これがテンプレート・パラメータである理由は、 adjacency_iterator_generator の主な使用はグラフ・クラスの定義の 内側 であり、その文脈中でまだ完全に定義されていないグラフ・ クラスの上で graph_traits を使えないからである。
デフォルト: graph_traits<Graph>::vertex_descriptor
OutEdgeIter これは graph_traits<Graph>::out_edge_iterator と同じ型でなければならない。
デフォルト: graph_traits<Graph>::out_edge_iterator

Model of

隣接イテレータ・アダプタ (型 adjacency_iterator_generator<...>::type) は Multi-Pass Input Iterator のモデルである。

Members

隣接イテレータ型は reference の型が value_type と同じで、それから operator*() が値返しであることを除けば、Random Access Iterator コンセプトによって要求されるメンバ関数と演算子を実装している。 さらに次のコンストラクタを持つ:

adjacency_iterator_generator::type(const OutEdgeIter& it)


Revised 19 Aug 2001

©Copyright Jeremy Siek 2000. Permission to copy, use, modify, sell and distribute this document is granted provided this copyright notice appears in all copies. This document is provided "as is" without express or implied warranty, and with no claim as to its suitability for any purpose.

Japanese Translation Copyright © 2003 Takashi Itou

オリジナルの、及びこの著作権表示が全ての複製の中に現れる限り、この文書の複製、利用、変更、販売そして配布を認める。このドキュメントは「あるがまま」に提供されており、いかなる明示的、暗黙的保証も行わない。また、いかなる目的に対しても、その利用が適していることを関知しない。