使用带有模板循环依赖的类型别名

时间:2017-12-12 17:03:24

标签: c++ template-meta-programming

注释行不起作用,因为MyArray需要MyValue但MyValue需要MyArray(这是一个简化的示例)。我可以使用结构但我觉得可能有更好的方法。继承类不起作用,因为我需要构造函数和运算符。

#include <variant>
#include <vector>

struct MyValue;

using MyArray = std::vector<MyValue>;
// using MyValue = std::variant<int, MyArray>;

struct MyValue {
    std::variant<int, MyArray> v;
};

int main() {}

0 个答案:

没有答案