abstract

CodeMD-UML
ref class MyAbstractClass abstract
{
};

with «C++CLIClass» and tagged value abstract=true 


CodeMD-UML
ref class MyAbstractClass2 
{ 
    public:
virtual void func() 
abstract;
};

func() with «C++CLIOperation» and tagged value abstract = true and virtual = true 



new

CodeMD-UML
ref class MyClassWithNewFunction
{ 
public:
   virtual void func() new {} 
}; 

func() with «C++CLIOperation» and tagged value overrideSpcifier = new


override

CodeMD-UML
ref class BaseClass { 
   public: 
virtual void f(); 
}; 
ref class SubClass : public 
BaseClass { 
   public:
virtual void f() override {} 
};



sealed


CodeMD-UML
interface class MyInterface 
{ 
    virtual void f(); 
    virtual void g(); 
}; 
ref class MyClass sealed: public 
MyInterface
{
public: 
    virtual void f(){}; 
    virtual void g(){}; 
};



interface class MyInterface2 { 
   public: 
virtual void f();
virtual void g();
};
ref class MyClass2 : MyInterface2 { 
  public:
   virtual void f() { } 
   virtual void g() sealed { } 
  // sub class cannot override g() 
};