Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Thema wird dargestellt, wie die Funktionalität der C#-Schlüsselwörter is und as in Visual C++ implementiert wird.
Weitere Informationen finden Sie unter is (C#-Referenz) und unter as (C#-Referenz).
Beispiel
// CS_is_as.cpp
// compile with: /clr
using namespace System;
interface class I {
public:
void F();
};
ref struct C : public I {
virtual void F( void ) { }
};
template < class T, class U >
Boolean isinst(U u) {
return dynamic_cast< T >(u) != nullptr;
}
int main() {
C ^ c = gcnew C();
I ^ i = safe_cast< I ^ >(c); // is (maps to castclass in IL)
I ^ ii = dynamic_cast< I ^ >(c); // as (maps to isinst in IL)
// simulate 'as':
Object ^ o = "f";
if ( isinst< String ^ >(o) )
Console::WriteLine("o is a string");
}