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++程式設計師。;)”