代码之家  ›  专栏  ›  技术社区  ›  zezba9000

“C类基类虚函数”——“托管C+++REF类中的重写”

  •  6
  • zezba9000  · 技术社区  · 16 年前

    我有一个.NETH4管理的C++ ReF类,我从一个.cn*中的.NETSy4基类中派生出来。

    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::\u resource::delete”匹配,但未标记为“new”或“override”;假定为“new”(和“virtual”)。

    什么是正确的托管C++语法来覆盖一个 virtual C类函数?

    1 回复  |  直到 10 年前
        1
  •  6
  •   Igor Zevaka    16 年前

    override after the function signature

    //MANAGED C++ CLASS
    namspace Input.DI
    {
      public ref class Mouse : ResourceManager::_Resource
      {
        public:
        virtual void Delete() override {}
      };
    }