.NET für Umsteiger: VB, VC++ und COM im Blick

Ein Beispiel für managed Code in VC++

Wie bereits erwähnt, kann man sehr wohl weiterhin in VC++ programmieren - und das auch für die CLR und unter Verwendung der CLR einschließlich der angebotenen Klassen aus dem .NET-Framework. Eine solche Klasse ist zum Beispiel die String-Klasse aus dem Namespace System.

Im Folgenden finden Sie ein Beispielprogramm, das das benötigte Vorgehen dafür beschreibt. Das Programm tut nur wenig Sinnvolles - zeigt aber die dahinter stehenden Konzepte deutlich auf. Dabei wird Folgendes implementiert: Das Beispielprogramm besteht aus zwei Projekten, wobei es sich bei dem einen um eine normale C#-Anwendung handelt, die im Wesentlichen aus einem Fenster mit einem Button und einem Label-Control besteht. Das zweite Projekt enthält eine mit VC++ programmierte Klasse namens CSample. Diese enthält nur eine einzige Methode namens Get(), die einen im Konstruktor der Klasse allozierten String zurückliefert. Dabei wird jedoch kein C++-String (wie zum Beispiel die MFC CString-Klasse) verwendet, sondern die String-Klasse aus der CLR.

Wird nun im C#-Programm der Button gedrückt, erzeugt das Programm eine neue Instanz des CSample-Objekts, erfragt bei der Instanz den Text und trägt das Resultat im Label-Control ein.