yeni (vtable'da yeni yuva) (C++ Bileşen Uzantıları)
new Anahtar sanal üye vtable yeni bir yuvaya aldığını belirtir.
Tüm çalışma zamanlarının
(Uygulamak için tüm çalıştırmalar yok Açıklamalar bu dil özelliği vardır.)
Windows çalışma zamanı
Desteklenen değil Windows Çalışma Zamanı.
Ortak Dil Çalışma Zamanı
Notlar
İçinde bir /clr derleme, new sanal üye vtable; yeni bir yuvaya aldığını gösterir. İşlev bir temel sınıf yöntemi geçersiz.
newişlev için IL eklenecek newslot değiştirici neden olur.Newslot hakkında daha fazla bilgi için bkz:
Gereksinimler
Derleyici seçeneği:/clr
Örnekler
Örnek
Aşağıdaki örnek etkisini gösterir new.
// newslot.cpp
// compile with: /clr
ref class C {
public:
virtual void f() {
System::Console::WriteLine("C::f() called");
}
virtual void g() {
System::Console::WriteLine("C::g() called");
}
};
ref class D : public C {
public:
virtual void f() new {
System::Console::WriteLine("D::f() called");
}
virtual void g() override {
System::Console::WriteLine("D::g() called");
}
};
ref class E : public D {
public:
virtual void f() override {
System::Console::WriteLine("E::f() called");
}
};
int main() {
D^ d = gcnew D;
C^ c = gcnew D;
c->f(); // calls C::f
d->f(); // calls D::f
c->g(); // calls D::g
d->g(); // calls D::g
D ^ e = gcnew E;
e->f(); // calls E::f
}
Çıktı
Ayrıca bkz.
Başvuru
Geçersiz Kılma Tanımlayıcıları (C++ Bileşen Uzantıları)