有人能告诉我如何使用view_as
吗。或者boost多边形库中的一个例子?
在文档中,我们提到可以从一个类型转换到另一个类型。
http://www.boost.org/doc/libs/1_58_0/libs/polygon/doc/gtl_polygon_90_concept.htm
boost::polygon文档不是很好,但至少在这个领域它看起来很清楚:
作为
polygon_90_concept
的模型的对象可以被视为其任何精化的模型,如果它在运行时被确定为符合这些概念的限制。这个概念铸造是通过view_as<>()
函数实现的。
view_as<rectangle_concept>(polygon_90_object)
view_as<>()
的返回值可以传递到任何需要在其模板参数中指定概念类型的对象的接口中。