我一直在尝试在 C++ 中找到两个外部接口的适配器解决方案,它们非常相似,但枚举中的返回类型不同。
enum
{
SAME_VALUE1,
SAME_VALUE2
} EnumTypeA
enum
{
SAME_VALUE1,
SAME_VALUE2,
DIFFERENT_VALUE3
} EnumTypeB
class A // not inherited
{
EnumTypeA Method();
}
class B // not inherited
{
EnumTypeB Method();
}
您对解决方案有任何想法,以便我可以使用包装器来调用接口 A 或 B?
ReturnType? MyAdapter::Method()
{
// Call Method from A or B but how
}
问候, 布拉克
补充说明:我已经使用 Boost.Variant 解决了这个问题