我有两个接口:
public interface I1
{
A MyProperty { get; set; }
}
public interface I2 : I1
{
new B MyProperty { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
在C#中,我可以像这样明确地实现:
public class C : I1, I2
{
public B MyProperty { get; set; }
A I1.MyProperty { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
不知何故,我必须在c ++/cli项目中使用这些接口.那么,我该如何在c ++/cli中实现呢?
提前致谢.
我自己解决了.它应该是:
public ref class C : I1, I2
{
public:
virtual property B^ MyProperty
{
B^ get() { ... }
void set(B^ value) { ... }
}
protected:
virtual property A^ DummyProperty
{
A^ get() = I1::MyProperty::get { return nullptr; }
void set(A^ value) = I1::MyProperty::set { }
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1081 次 |
| 最近记录: |