欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
Visual C++ 2010新體驗
2010-08-02

Visual C++ 2010新體驗

文章分類(lèi):.net編程

 

 

 

在1998年推出具有里程碑意義的Visual Studio 6.0之后,好日子沒(méi)過(guò)多久,微軟在企業(yè)應用開(kāi)發(fā)領(lǐng)域便面臨尷尬,其C/S模式解決方案Visual Basic + Visual C++遭受“功能全內置”的Borland Delphi的嚴重沖擊,其B/S解決方案ASP + ActiveX與Java網(wǎng)頁(yè)開(kāi)發(fā)技術(shù)相比難登大雅之堂。后一點(diǎn)尤其讓微軟頭疼,稍有頭腦的人都能看出企業(yè)應用互聯(lián)網(wǎng)化(網(wǎng)頁(yè)化)已經(jīng)勢不可擋。在這種腹背受敵的緊急情況下,微軟啟動(dòng)了.NET戰略。比爾•蓋茨從Borland挖走了Delphi架構師Anders Hejlsberg(后來(lái)的C#語(yǔ)言設計師),在狙擊了Java的同時(shí)也重創(chuàng )了Delphi,可謂一箭雙雕。

 

.NET成敗事關(guān)微軟生死,微軟全力以赴,無(wú)暇他顧。鑒于在Windows平臺上Visual C++ 的優(yōu)勢地位一時(shí)無(wú)人能敵,且C++新標準一再難產(chǎn),因此微軟沒(méi)有動(dòng)力同時(shí)也很難對C++做些什么,結果,從Visual Studio .NET一直到Visual Studio 2008,微軟對Visual C++的本地應用(非托管應用)開(kāi)發(fā)能力的升級基本是虛應故事。其間,微軟在Visual C++上投入的精力主要是讓C++訪(fǎng)問(wèn).NET設施以及與其他.NET語(yǔ)言交互。在最初推出的Managed C++大獲全敗后,Herb Sutter入主Visual C++團隊,擔任C++/CLI架構師,目的仍然是為C++訪(fǎng)問(wèn).NET提供通道,而非對C++本身的改進(jìn)。隨著(zhù).NET平臺不斷發(fā)展壯大,逐漸占據企業(yè)應用開(kāi)發(fā)半壁江山,微軟已經(jīng)度過(guò)了.NET發(fā)展的焦躁期,終于能騰出手來(lái)重振Visual C++。

 

2010年2月10日,微軟發(fā)布了Visual Studio 2010發(fā)布候選版,預示著(zhù)Visual Studio 2010正式版的發(fā)布已進(jìn)入讀秒階段。在發(fā)布候選版中,從豐乳肥臀般的啟動(dòng)畫(huà)面,到體貼入微、近乎獻媚的源代碼編輯器,都表明微軟對軟件用戶(hù)體驗的理解又上了一個(gè)檔次。Visual Studio 2010毫無(wú)疑問(wèn)具備秒殺微軟陣營(yíng)開(kāi)發(fā)人員的魅力。無(wú)論是Windows、Office、Web、移動(dòng)智能設備應用開(kāi)發(fā),還是并行計算、云計算應用開(kāi)發(fā),都得到了增強甚至嶄新的支持。對于C++的新增支持則是微軟營(yíng)銷(xiāo)Visual Studio 2010時(shí)有意無(wú)意都要提及的一點(diǎn)。

 

在Visual Studio 2010中,微軟從語(yǔ)言、庫、編譯器以及IDE等多方面增強了C++應用開(kāi)發(fā)能力,篇幅所限,在此僅羅列一些主要的新功能和新特性。首先,在語(yǔ)言方面,Visual Studio 2010提前支持如下“C++11”標準(即此前所謂的C++0x標準。據可靠情報,下一代C++標準將于2011年發(fā)布……)特性:

* static_assert關(guān)鍵字:編譯期斷言。若斷言失敗,則編譯失敗并產(chǎn)生編譯期錯誤診斷消息。

* auto關(guān)鍵字:該關(guān)鍵字被賦予新含義,默認用于自動(dòng)類(lèi)型推導,即從變量聲明表達式(或初始化表達式)中推導其類(lèi)型。在模板編程中,auto可以有效地簡(jiǎn)化編碼且避免出錯。程序員在Visual Studio 2010中可以使用/Zc:auto編譯選項在auto關(guān)鍵字的新舊含義之間進(jìn)行切換。

* decltype關(guān)鍵字:用于返回指定表達式的類(lèi)型。在與auto關(guān)鍵字結合使用時(shí),可以為模板編程提供極大的方便。程序員可以聲明只有編譯器才知道的類(lèi)型,例如,可以聲明返回類(lèi)型依賴(lài)于其模板實(shí)參類(lèi)型的函數模板。

* nullptr關(guān)鍵字:一個(gè)專(zhuān)門(mén)的空指針值,表示一個(gè)指針變量或對象句柄不指向任何對象。

* 右值引用:利用右值引用聲明符(&&)可以將一個(gè)引用聲明為右值。右值引用能夠解決C++中因不必要的臨時(shí)對象創(chuàng )建所導致的效率問(wèn)題,允許程序員使用移動(dòng)(move)語(yǔ)義和完美轉發(fā)(perfect forwarding)編寫(xiě)更加高效的代碼。

* Lambda表達式:類(lèi)似于匿名函數,兼具函數指針和函數對象之優(yōu)點(diǎn)同時(shí)消除了二者之缺點(diǎn)。它比函數指針靈活且可以維持狀態(tài),又不像函數對象那樣需要進(jìn)行明確的類(lèi)定義。程序員可以使用lambda函數取代函數對象作為函數模板的實(shí)參,還可以結合使用auto關(guān)鍵字將變量類(lèi)型聲明為lambda。

在庫方面,Visual Studio 2010除了對STL、ATL、MFC等庫進(jìn)行修補和完善外,還新增了一些庫,比較重要的特性如下:

* PPL(Parallel Pattern Library,并行模式庫):在已經(jīng)到來(lái)的多核CPU時(shí)代,PPL為C++程序員編寫(xiě)并行計算代碼提供了方便。PPL由并行算法、并行容器和任務(wù)并行機制組成。并行算法是一組并行處理數據集合的泛型算法;并行容器是一種泛型容器,提供了并行訪(fǎng)問(wèn)元素的能力;任務(wù)并行機制則提供了并行執行多任務(wù)的機制。

* CTaskDialog類(lèi):MFC的一個(gè)新增特性。利用CTaskDialog而不是AfxMessageBox創(chuàng )建的消息框可以向用戶(hù)顯示更豐富的信息。

* 重啟管理器(Restart Manager):可以為軟件提供災難恢復功能。當應用程序意外關(guān)閉或重啟時(shí),重啟管理器可以用于自動(dòng)保存文檔并重啟應用,當應用程序被自動(dòng)更新時(shí),也可以使用重啟管理器啟動(dòng)應用。在創(chuàng )建MFC應用時(shí),程序員可以利用向導也可以手工為應用程序添加該項功能。

* SafeInt庫:用于各種類(lèi)型的整數算術(shù)運算,可以自動(dòng)偵測運算過(guò)程中可能發(fā)生的整數溢出或除零錯誤。

 

對于大多數C++程序員而言,Visual Studio 2010對IDE的增強可能比對語(yǔ)言和庫的增強更有吸引力。強大、友好的IDE能夠極大地提高程序員的開(kāi)發(fā)效率,縮短軟件產(chǎn)品的開(kāi)發(fā)周期。采用了WPF技術(shù)開(kāi)發(fā)的Visual C++ 2010 IDE新增了大量的新特性,例如:

* 頭文件包含指令自動(dòng)完成功能:當鍵入 #include時(shí),IDE會(huì )創(chuàng )建一個(gè)頭文件下拉列表以供選擇,該列表可以隨程序員的鍵入不斷篩選列表項。這樣,即使程序員記不清頭文件的全名也可以迅速地包含所需的頭文件(例如對編程新手而言難于記憶的標準頭“algorithm”)。

* 改良的智能感知錯誤信息:IDE可以更好地偵測可能導致喪失智能感知功能的錯誤,并在出錯代碼下面顯示紅色的波浪線(xiàn),同時(shí)將智能感知錯誤信息顯示在錯誤列表窗口中。程序員雙擊錯誤列表窗口的錯誤信息行就可以定位到出錯代碼。

* MFC類(lèi)向導重裝上陣:對于MFC程序員來(lái)說(shuō)絕對是一個(gè)好消息,該向導可以方便地創(chuàng )建類(lèi)、消息和變量等,而無(wú)需手工修改各個(gè)代碼文件。

以下是筆者個(gè)人喜歡的兩個(gè)小功能,由Visual Studio 2010 IDE提供,并非僅針對Visual C++:

* 文本編輯區縮放:既支持Ctrl+鼠標滾輪無(wú)級縮放,也可利用左下角的下拉框縮放。該功能簡(jiǎn)單、實(shí)用。不僅便于演示和交流,也便于開(kāi)發(fā)者迅速定位到指定代碼。

* 調用層次窗口:通過(guò)該窗口可以方便地查看函數和成員函數的調用關(guān)系。

 

另外,Visual Studio 2010支持多顯示器,即可以將IDE中的多個(gè)窗口浮動(dòng)顯示在不同的顯示器上。雖然不知道究竟會(huì )有多少程序員使用這個(gè)功能,不過(guò)顯然這個(gè)功能很有趣,至少可以讓程序員干活時(shí)顯得更有范兒。

 

還有一些其他方面的改進(jìn)。例如在項目構建方面,Visual C++ 2010解決方案和項目改用MSBuild(而不是VCBUILD)進(jìn)行構建。MSBuild是一種基于XML的構建工具,具有更大的靈活性和更好的擴展性,至此,MSBuild真正成了Visual Studio所有語(yǔ)言類(lèi)型的項目的通用構建工具。此外,Visual C++ 2010在編譯器、連接器以及輔助工具等方面也做了一些完善。

 

不過(guò),令人遺憾的是,Visual Studio 2010仍未像對C#那樣直接提供對C++代碼的重構支持,仍然需要輔以Visual Assist X這樣的第三方插件。按照道理講,以微軟的資源提供對C++代碼的重構功能并非難事,收購Visual Assist X不能說(shuō)易如反掌,至少不差錢(qián),但微軟并沒(méi)有這么做,或者說(shuō)沒(méi)有把事情做絕,雖然有它自己的考慮,但仍然讓人感到一絲不爽。

 

Visual C++ 2010能有今天,Herb Sutter功不可沒(méi),其人智商和情商都高人一籌(在程序員這個(gè)群體,技術(shù)能力強的情商往往比較低,反之亦然),十幾年來(lái)一直身居ISO C++標準化委員會(huì )要職。作為Visual C++小組(C++/CLI)架構師,Herb Sutter不但竭力消除Managed C++一敗涂地給Visual C++造成的負面影響,而且確保了Visual C++ 2010不犯方向性錯誤。不過(guò),從公開(kāi)的文獻看,Visual C++ 2010只是小心翼翼地加入了一小部分必然會(huì )進(jìn)入“C++11”標準的新特性,雖然此舉無(wú)可厚非,但在新標準正式出臺之前,微軟其實(shí)可以做更多的事??梢韵胂?,隨著(zhù)“C++11”標準的發(fā)布,在下一個(gè)版本的Visual Studio發(fā)布時(shí),微軟必然會(huì )大肆渲染對C++的新增支持。

 

作者:榮耀 來(lái)源:《程序員》2010年第4期

本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
宇宙最強IDE放棄Mac支持
vs2010與vs2008
VS Code 和 Python:數據科學(xué)的天作之合
8月編程語(yǔ)言榜:.Net前景如何?
Visual Studio中的搜索和導航技巧
程序員天天用的IDE,你了解嗎?
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久