相关疑难解决方法(0)

C++相互递归变体类型

我试图用变体表示c ++中的PDF对象类型.PDF对象是以下之一:

  • Boolean
  • Integer
  • Real
  • String
  • Name
  • Stream
  • Array<Object>
  • Map<Object, Object>

如您所见,Object类型是相互递归的,因为Array类型需要声明Map类型,这需要声明Array类型.我怎么能在c ++中代表这种类型呢?如果变体不是最好的方式,那是什么?

以下是我到目前为止所尝试但由于std::unordered_map(我认为)http://coliru.stacked-crooked.com/a/699082582e73376e的要求而无法编译

c++ recursion types mutual-recursion boost-variant

4
推荐指数
1
解决办法
1629
查看次数

标签 统计

boost-variant ×1

c++ ×1

mutual-recursion ×1

recursion ×1

types ×1