![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
BidirectionalBoost , ,
|
G | Тип, который является моделью графа. |
г | Объект типаG. |
против | Объект типаboost::graph_traits |
boost::graph_traits Этот тип тега должен быть конвертируемым вbidirectional_graph_tag. |
<boost::graph_traits<G>::in_edge_iterator>Передний итератор для вершиныvобеспечивает доступ к краямv. Таким образом, тип значения в переднем итераторе является типом дескриптора края его графика. Итератор должен соответствовать требованиямMultiPassInputIterator. |
in_edges(v, g) | Возвращает итератор-диапазон, обеспечивающий доступ к выступам (для направленных графов) или краям инцидента (для ненаправленных графов) вершиныvв графеg. Для как направленных, так и ненаправленных графов, целью края должна быть вершинаv, а источником должна быть вершина, прилегающая кv. Тип возврата:std::pair |
in_degree (v, g) | Возвращает число краев (для направленных графов) или число краев (для ненаправленных графов) вершиныvв графеg. Тип возврата:Степень_size_type |
степень (v, g) | Возвращает число in-edges plus out-edges (для направленных графов) или число краев инцидента (для ненаправленных графов) вершиныvв графеg. Тип возврата:Степень_size_type |
template <class G> struct BidirectionalGraphConcept { typedef typename boost::graph_traits<G>::in_edge_iterator in_edge_iterator; void constraints() { BOOST_CONCEPT_ASSERT(( IncidenceGraphConcept<G> )); BOOST_CONCEPT_ASSERT(( MultiPassInputIteratorConcept<in_edge_iterator> )); p = in_edges(v, g); n = in_degree(v, g); n = degree(v, g); e = *p.first; const_constraints(g); } void const_constraints(const G& g) { p = in_edges(v, g); n = in_degree(v, g); n = degree(v, g); e = *p.first; } std::pair<in_edge_iterator, in_edge_iterator> p; typename boost::graph_traits<G>::vertex_descriptor v; typename boost::graph_traits<G>::edge_descriptor e; typename boost::graph_traits<G>::degree_size_type n; G g; };
Copyright © 2000-2001 | Джереми Сик, Университет Индианыjsiek@osl.iu.edu |
Статья Bidirectional раздела может быть полезна для разработчиков на c++ и boost.
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
:: Главная :: ::
реклама |