C++ mit Managed Extensions und der Wechsel zu VS 2005
Wer mit C++ für .Net programmiert, der verwendet momentan die Managed Extensions. Daran wird sich mit VC++ aus dem Visual Studio 2005 aber eine ganze Menge ändern. Zwar gibt es einen Compiler-Schalter der auch den MC++ Code akzeptiert, aber eigentlich sollte man auf die neue Art umsteigen - und die hat auch einiges für sich.
Es gibt einige dramatische und weniger dramatische Aenderungen. Statt
__gc class
heist es nun
ref class
- und auch andere Keywords mit doppeltem Underscore sind verschwunden. Das ist in den meisten Fällen wohl mit Search&Replace zu lösen.
Ein anderes Beispiel ist eine deutlich angenehmere Art Properties zu formulieren. Aus
__property int get_A() { return a; }
__property int set_A( int _a) { a = _a; }
wird nun
property int A
{
int get() { return a; }
int set( int _a) { a = _a; }
}
Sieht man sich dieses neue Konstrukt an, so ist man fast verleitet die Umstellung als CSharpisierung von C++ zu verstehen.
Von Stan Lippman (ja, genau, der Stan Lippman) gibt es auf MSDN einen sehr ausführlichen Artikel zum Thema. Schwerstens empfohlen für alle, die im nächsten Jahr immer noch mit C++ unter .Net unterwegs sind.