Boost::variant 具有引用相同变体的对象
Boost::variant with a object which references the same variant
我怎样才能拥有不同对象的变体 A, B, C
,其中 C
引用了该变体?
class A {
...
};
class B {
...
};
class C {
...
std::vector<PossibleValues> storage; // reference to variant
...
};
boost::variant<A, B, C> PossibleValues;
如果顺序正确,您可能会:
class A {
//...
};
class B {
//...
};
class C;
using PossibleValues = std::variant<A, B, C>;
class C {
//...
std::vector<PossibleValues> storage; // reference to variant
//...
};
我怎样才能拥有不同对象的变体 A, B, C
,其中 C
引用了该变体?
class A {
...
};
class B {
...
};
class C {
...
std::vector<PossibleValues> storage; // reference to variant
...
};
boost::variant<A, B, C> PossibleValues;
如果顺序正确,您可能会:
class A {
//...
};
class B {
//...
};
class C;
using PossibleValues = std::variant<A, B, C>;
class C {
//...
std::vector<PossibleValues> storage; // reference to variant
//...
};