本文整理汇总了C++中visitor类的典型用法代码示例。如果您正苦于以下问题:C++ visitor类的具体用法?C++ visitor怎么用?C++ visitor使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了visitor类的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: visit
static void visit( const Key&, test::containers& p, visitor& v )
{
v.apply( "pair", p.pair );
v.apply( "vector", p.vector );
v.apply( "set", p.set );
v.apply( "map", p.map );
}
开发者ID:sheenzhaox,项目名称:comma,代码行数:7,代码来源:visiting_test.cpp
示例2: hash
std::size_t visitor_hasher::hash(const visitor& v) {
std::size_t seed(0);
combine(seed, dynamic_cast<const dogen::yarn::element&>(v));
combine(seed, hash_std_list_dogen_yarn_name(v.visits()));
combine(seed, hash_boost_optional_dogen_yarn_name(v.parent()));
return seed;
}
开发者ID:,项目名称:,代码行数:10,代码来源:
示例3: visit
void variant::visit( const visitor& v )const
{
switch( get_type() )
{
case null_type:
v.handle();
return;
case int64_type:
v.handle( *reinterpret_cast<const int64_t*>(this) );
return;
case uint64_type:
v.handle( *reinterpret_cast<const uint64_t*>(this) );
return;
case double_type:
v.handle( *reinterpret_cast<const double*>(this) );
return;
case bool_type:
v.handle( *reinterpret_cast<const bool*>(this) );
return;
case string_type:
v.handle( **reinterpret_cast<const const_string_ptr*>(this) );
return;
case array_type:
v.handle( **reinterpret_cast<const const_variants_ptr*>(this) );
return;
case object_type:
v.handle( **reinterpret_cast<const const_variant_object_ptr*>(this) );
return;
default:
FC_THROW_EXCEPTION( assert_exception, "Invalid Type / Corrupted Memory" );
}
}
开发者ID:maqifrnswa,项目名称:fc,代码行数:32,代码来源:variant.cpp
示例4:
void fltvar ::invite (visitor &v) { v.visit (*this); }
开发者ID:pippijn,项目名称:rasm,代码行数:1,代码来源:ast.C
示例5: accept
void recall::accept(visitor& v)
{
v.visit_recall(shared_from_this());
}
开发者ID:blackberry,项目名称:Wesnoth,代码行数:4,代码来源:recall.cpp
示例6: accept
void attack::accept(visitor& v)
{
v.visit(shared_from_this());
}
开发者ID:Kanac,项目名称:wesnoth,代码行数:4,代码来源:attack.cpp
示例7: end
/* virtual */ void
group::visit ( visitor const& v )
{
v.accept(*this);
std::for_each(begin(), end(), std::bind(&node::visit, std::placeholders::_1, std::ref(v)));
}
开发者ID:scholli,项目名称:gpucast,代码行数:6,代码来源:group.cpp
示例8: accept
void recruit::accept(visitor& v)
{
v.visit(shared_from_this());
}
开发者ID:fluffbeast,项目名称:wesnoth-old,代码行数:4,代码来源:recruit.cpp
示例9: accept
void move::accept(visitor& v)
{
v.visit(shared_from_this());
}
开发者ID:,项目名称:,代码行数:4,代码来源:
示例10: visit
virtual void visit(visitor& v) override
{
v.accept(*this);
}
开发者ID:CCJY,项目名称:coliru,代码行数:4,代码来源:main.cpp
示例11:
void
othr_decl_n::accept (visitor & v)
{
v.visit_othr_decl (this);
}
开发者ID:13572293130,项目名称:XOgastan,代码行数:5,代码来源:decl_n.cpp
示例12: invite
void instruction::invite (visitor &v) { v.visit (*this); }
开发者ID:pippijn,项目名称:rasm,代码行数:1,代码来源:ast.C
注:本文中的visitor类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论