程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> 透析VS 2005中的C++語言

透析VS 2005中的C++語言

編輯:C++入門知識

正因C++語言的極大靈活性和編譯簡單的特性,在sual Studio 2005進行對C++語言進行操作時,編程時就再也不會需要雙下劃線了,這大大的為一些開發人員帶來了很多方便之處。

對於這一點,我想大部分人都是這麼認為的。這種妥協帶來了以下結果:1、開發者發現這種語法不自然而且看上去也很不舒服。如果你將這麼作,一種自然完美的語言將給你帶來巨大的自由,當你編程時就再也不會需要雙下劃線了

Viusal Studio2005極大地豐富了它的庫,可以說是科研背後的清障機和加速器,對於這一點,我想大部分人都是這麼認為的。它帶來的大量工具及新增的功能性函數使開發人員的生活越來越快樂、簡單。

但對於我來說,所有這些與Visual Studio2005在C++語言上做的改變相比卻都顯得是那麼蒼白無力。這篇文章中,我著重敘述即將向用戶發行的Viusal Studio2005版本給C++帶來的變化。

Visual Studio.NET 2002在C++中引入了可擴展的托管,這種擴展帶來的關鍵詞以雙下劃線開始,例如__gc 和 __property。這個版本發行後的這些年來,我寫了大量帶有雙下劃線的代碼,我不得不承認我從來都不喜歡這一點。

我完全明白真正的原因是什麼:雙下劃線將關鍵詞標志為特殊地擴展,以區分編譯器的標准編譯規則,在理論上,可以充分使用可擴展的托管,使用其他的編譯器編譯它,這將忽略所有帶雙下劃線關鍵詞。

解決方案:微軟發現了一個解決方法來改變這種語言而不是替換這種語言。但是這種妥協帶來了以下結果:

1、開發者發現這種語法不自然而且看上去也很不舒服。

2、不能盡其所能。

例如,下面是托管C++語言聲明屬性的例子:

  1. public __gc class Foo  
  2. {  
  3. // hundreds of lines of code  
  4. __property String* get_Text();  
  5. // hundreds of lines of code  
  6. __property void set_Text(String*);  
  7. // hundreds of lines of code  
  8. };   

我相信,有良好編程習慣的程序員會將get與set緊挨者使用,並且會緊接著又聲明所有下面需要使用的變量。但是語言並不管這些,它不能提供封閉的括號來界定結構,來讓你聲明"這是一個作為單元的屬性"。所以當它運行時顯得不自然並且與其他.NET語言也格格不入。

面對這些你能做什麼?唯一的方法是將C++語言CLI自然地結合起來,反之也就是真正改變C++語言。如果你將這麼作,一種自然完美的語言將給你帶來巨大的自由,當你編程時就再也不會需要雙下劃線了。

  1. 簡介學習C++總結之談
  2. 對C++庫函數進行學習探索總結筆記
  3. C++類庫設計的基本構思與方法
  4. C++語言真的還有市場價值?
  5. C++類庫設計的基本構思與方法

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved