Managed C++: Another VB, or VB.NET, or Whatever

Managed C++: Another VB, or VB.NET, or Whatever

FACT: 从Java到C#的转换要比从VB到VB.NET容易得多。

  自从VB.NET把VB的语法翻的地朝天之后,VB程序员们一直在努力找寻一个问题的答案:“Is VB Dead?”。 Managed C++将会在Visual Studio 2005(Whidbey)中经历一个类似的语法变化过程:所有的__keyword(__gc, __nogc, etc)都会被废除,取而代之的是一些新关键字和语法。下面是从Stanley Lippman(The author of “Inside C++ Object Model”和“C++ Primer”,两本书都有侯捷先生的中译本,著译都很经典)的blog上摘录的一段改变前后的代码:

// original language syntax

public __gc __sealed __abstract class State

{

public:

static State();

static String* version();

private:

static String* ms_version;

};

// revised language syntax

public ref class State abstract sealed

{

public:

static State();

static String^ version();

private:

static bool ms_inParam;

};

  新的语法显然更干净整洁一些(除了那个“盖帽”式的引用^),但是如此大规模的语法改动,不得不让人担忧Managed C++会不会重蹈VB.NET的覆辙——倒是不用担心C++的命运,C++程序员(包括我在内)大概是这个地球上最顽固的群体:“一场大灾难之后,这个地球上只剩下蟑螂、老鼠——还有C++程序员。;)”