“C# 基类虚函数” -“托管 C 中的覆盖”参考类”
我有一个 .NET_4 托管 C++ 引用类,它是从用 C# 编写的 .NET_4 基类派生的。
C# 基类:
namespace Core
{
public class ResourceManager
{
public class _Resource
{
public virtual void Delete() {}
}
}
}
托管 C++ 类:
namespace Input.DI
{
public ref class Mouse : ResourceManager::_Resource
{
public:
virtual void Delete() {}
};
}
这是我收到的错误:
'Input::DI::Mouse::Delete' :匹配基本引用类方法 'Core::ResourceManager::_Resource::Delete',但未标记为 'new' 或 'override';假定为“新”(和“虚拟”)
从 C# 类重写 virtual
函数的正确托管 C++ 语法是什么?
I have a .NET_4 Managed C++ ref class that I derive from a .NET_4 base class written in C#.
C# base class:
namespace Core
{
public class ResourceManager
{
public class _Resource
{
public virtual void Delete() {}
}
}
}
Managed C++ class:
namespace Input.DI
{
public ref class Mouse : ResourceManager::_Resource
{
public:
virtual void Delete() {}
};
}
Here is the error I'm getting:
'Input::DI::Mouse::Delete' : matches base ref class method 'Core::ResourceManager::_Resource::Delete', but is not marked 'new' or 'override'; 'new' (and 'virtual') is assumed
What is the correct managed C++ syntax to override a virtual
function from a C# class?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您将
override
放在函数签名之后。You put
override
after the function signature.