假设我们有两个 C++/CLI 接口声明具有不同返回类型的 Foo() 成员。
public interface class InterfaceA
{
bool Foo();
};
public interface class InterfaceB
{
int Foo();
};
我们在这里要做的是有一个类,实例化一个可以通过上述接口访问的对象。因此,直接的方法是:
public ref class Class : InterfaceA, InterfaceB
{
virtual bool Foo() = InterfaceA::Foo { return true; }
virtual int Foo() = InterfaceB::Foo { return 10; }
};
不幸的是,这给了我们编译器错误“重载的函数仅因返回类型不同而不同”。这个 C++/CLI 限制有什么解决方法吗?