成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

細數(shù)Visual Stuido 2010中VC++的新特征

原創(chuàng)
開發(fā) 后端
本文將向您展示Visual Studio 2010中Visual C++新推出的一些功能及增強性特征。

【51CTO經(jīng)典譯文】51CTO開發(fā)頻道向您推薦《VC++基礎(chǔ)開發(fā)專題

一、Visual C++工程及其構(gòu)建系統(tǒng)

(一)MSBuild

現(xiàn)在,Visual C++解決方案和項目都使用MSBuild進行構(gòu)建,從而取代了原來的構(gòu)建工具VCBUILD.exe。對于其他的Visual Studio語言和項目類型,MSBuild提供了一樣的靈活性,可擴展性和基于XML的構(gòu)建支持工具。為此,Visual C++項目文件現(xiàn)在也使用了流行的XML文件格式,并具有.vcxproj文件擴展名。另外,從早期版本的Visual Studio中提供的項目文件將被自動轉(zhuǎn)換為新的文件格式。有關(guān)MSBuild工具的更多信息,請參見文章“MSBuild(Visual C++)”。

(二)VC++目錄

現(xiàn)在,VC++目錄設(shè)置位于兩個地方。你可以使用項目屬性頁來設(shè)置每個項目對應(yīng)的VC++目錄,也可以使用屬性管理器和一個屬性表來設(shè)置全局性的并且使每個配置值對應(yīng)的VC++目錄。

(三)工程依賴性

在VC++早期版本中,您可以定義存儲在同一個解決方案中的項目之間的依賴性。如今在這些解決方案轉(zhuǎn)換為新的項目文件格式后,相應(yīng)的依賴性也被轉(zhuǎn)換為項目到項目的引用。這種變化將會影響應(yīng)用程序,因為解決方案依賴性和項目到項目的引用是不同的。

(四)宏與環(huán)境變量

新引入的_ITERATOR_DEBUG_LEVEL宏支持針對迭代器調(diào)用調(diào)試支持。你可以使用這個宏來代替較老的_SECURE_SCL和_HAS_ITERATOR_DEBUGGING宏。

二、Visual C++庫

(一)/analyze警告

絕大多數(shù)的/analyze(企業(yè)代碼分析)警告如今都已經(jīng)被從CRT,MFC和ATL庫中移除。

(二)重啟動管理器

如果您的應(yīng)用系統(tǒng)出現(xiàn)意外關(guān)閉或重新啟動情況的話,重啟管理器支持自動保存文件并重新啟動您的應(yīng)用程序。例如,當您的應(yīng)用程序由于自動更新而關(guān)閉時您可以使用重啟管理器來再次啟動這個應(yīng)用程序。欲了解更多有關(guān)如何將應(yīng)用程序配置為使用啟動管理器的信息,請參見《如何:添加重啟動管理支持》一文。

(三)MFC庫

新引入的CTaskDialog類可用于代替標準的AfxMessageBox消息框。CTaskDialog類能夠顯示和收集比標準的消息框更多的信息。

(四)新的ATL宏

又有新的宏被添加到ATL宏庫中,以便進一步擴大原有的PROP_ENTRY_TYPE和PROP_ENTRY_TYPE_EX宏的現(xiàn)有功能。另外新增加的兩個宏P(guān)ROP_ENTRY_INTERFACE和PROP_ENTRY_INTERFACE_EX支持你添加一個有效的CLSID列表。最后一對新宏P(guān)ROP_ENTRY_INTERFACE_CALLBACK和PROP_ENTRY_INTERFACE_CALLBACK_EX支持您指定一個回調(diào)函數(shù),以確定某個CLSID是否是有效的。

(五)新庫

新引入的SafeInt庫能夠確保執(zhí)行安全的算術(shù)運算,從而有效地避免了經(jīng)常出現(xiàn)的整數(shù)溢出問題。這個庫還支持比較不同類型的整數(shù)。

三、集成開發(fā)環(huán)境(IDE)

(一)改進的錯誤智能感知支持

在Visual Studio 2010中,集成開發(fā)環(huán)境(IDE)支持更好地檢測可能導(dǎo)致丟失智能感知支持的錯誤,并在這些內(nèi)容下面顯示以紅色波浪下劃線。此外,集成開發(fā)環(huán)境還支持把智能感知的錯誤輸出到錯誤列表窗口中。要想觀察導(dǎo)致問題的相關(guān)代碼,你只需要雙擊錯誤列表窗口中的錯誤即可。

(二)#include自動完成特征

集成開發(fā)環(huán)境還支持#include關(guān)鍵字的自動完成。當您鍵入#include時,集成開發(fā)環(huán)境將自動創(chuàng)建一個包含有效的頭文件的下拉列表供您選擇。如果你繼續(xù)輸入一個文件名,集成開發(fā)環(huán)境將自動根據(jù)您的輸入加以過濾。在任何時候,你都可以根據(jù)這個列表來選擇你想要包括的文件。顯然,這一功能可以讓您快速地包括那些尚不確切知道文件名的文件。

四、Visual C++編譯器和鏈接器

(一)auto關(guān)鍵字

如今,auto關(guān)鍵字有了新的用處。你可以使用默認的auto關(guān)鍵字來聲明一個變量的類型是從此變量聲明的初始化表達式中推導(dǎo)出的。而新的/Zc:auto編譯器選項支持調(diào)用auto關(guān)鍵字的新意義或以前的意義。

(二)decltype操作符

decltype操作符能夠返回一個指定表達式的類型。因此,你可以使用decltype操作符并結(jié)合使用auto關(guān)鍵字來聲明一個復(fù)雜類型或者是僅為編譯器所知曉的類型。例如,你可以使用這樣的組合來聲明一個模板函數(shù),而此模板函數(shù)的返回類型取決于其模板參數(shù)的類型?;蛘撸氵€可以聲明一個模板函數(shù),而此模板函數(shù)調(diào)用另一個函數(shù),然后返回被調(diào)用函數(shù)的返回類型。

(三)Lambda表達式

Lambda函數(shù)有一個函數(shù)體,但沒有函數(shù)名。Lambda函數(shù)把函數(shù)指針和函數(shù)對象兩者的最佳特性組合到了一起。

你可以使用一個lambda函數(shù)來作為模板函數(shù)參數(shù)以代替一個函數(shù)對象,或者聯(lián)合使用auto關(guān)鍵字來聲明一個lambda類型的變量。

(四)Rvalue引用

右值rvalue引用聲明符(&&)能夠聲明對一個右值rvalue的引用。右值引用能夠使你使用動態(tài)語義(move semantics)和完善轉(zhuǎn)發(fā)(perfect forwarding)來編寫更有效的構(gòu)造函數(shù),普通函數(shù)和模板。

(五)static_assert聲明

static_assert聲明有助于在編譯時測試軟件中的斷言,這不同于其他那些在運行時進行測試的斷言機制。如果斷言失敗,則編譯失敗并顯示出指定的錯誤信息。

(六)nullptr和__nullptr關(guān)鍵字

Visual C++編譯器允許您在本機代碼或托管代碼中使用nullptr關(guān)鍵字。nullptr關(guān)鍵字用于指出一個對象句柄、內(nèi)部指針或本地指針類型并不指向一個對象。當您使用/clr編譯器選項時,編譯器將把nullptr解釋為托管代碼,而在不使用/clr選項時解釋為本機代碼。

微軟特定的__nullptr關(guān)鍵字與nullptr關(guān)鍵字意思相同,但它只適用于本機代碼。如果您使用/clr編譯器選項編譯本機C/C ++代碼,那么編譯器不能確定nullptr關(guān)鍵字是一個本地關(guān)鍵字還是托管關(guān)鍵字。為了使編譯器更清楚地理解你的意圖,你可以使用nullptr關(guān)鍵字來指定當前操作為托管操作,而使用__nullptr關(guān)鍵字來指定當前操作為本地操作。

(七)/Zc:trigraphs編譯器選項

默認情況下,三字符組(trigraphs)支持是被禁用的。在這種情況下,你可以使用/Zç: trigraphs編譯器選項來啟用三字符組支持。

一個三字符組由兩個連續(xù)的問號后面跟著一個獨特的字符組成。編譯器能夠使用相應(yīng)的標點符號來取代這個三字符組。例如,編譯器能夠使用#(數(shù)字符號)字符替代三字符組??=。你還可以在C源文件中使用三字符組,因為這些文件中使用的是不會包含某些標點字符的字符集。

(八)新的基于配置的優(yōu)化選項

PogoSafeMode關(guān)鍵字是一個新的基于配置的優(yōu)化選項。你可以使用PogoSafeMode關(guān)鍵字來指定你想使用安全模式還是快速模式來優(yōu)化您的應(yīng)用程序。注意,安全模式是線程安全的,但它比快速模式慢一些。快速模式是默認的優(yōu)化行為。

(九)新的通用語言運行時(CLR)選項/clr:nostdlib

新引入了一個通用語言運行時(CLR)選項/clr:nostdlib。如果你的系統(tǒng)中包括了相同庫的不同版本,那么編譯器將顯示錯誤提示。這個新的選項可以使你排除默認的CLR庫,從而使你的程序可以使用一個特定的版本。

(十)新的pragma指令detect_mistmatch

新引入的pragma指令detect_mismatch能夠支持您使用相同的名稱來替換您的文件中的某個特定的標記(相對于其他的標記)。如果相同的名稱擁有多個值,連接器會發(fā)出錯誤提示。

五、工具

(一)ATL控件向?qū)?/p>

在ATL控件向?qū)Р辉僮詣犹畛銹rogID字段。如果一個ATL控件沒有一個ProgID,那么其他工具可能無法使用這個控件。這樣的一個工具的例子是“Insert Active Control”對話框。有關(guān)此對話框的更多信息,請參考文章“插入ActiveX控件對話框”。

(二)MFC類向?qū)?/p>

Visual Studio 2010中重新引入了MFC類向?qū)?。如今,您可以在解決方案的任何地方調(diào)用類向?qū)АFC類向?qū)г试S您添加類、消息和變量,而不必手動修改單個的代碼文件。

六、微軟宏匯編器參考

新引入的YMMWORD數(shù)據(jù)類型支持AVX(英特爾高級矢量擴展)指令中包含的256位的多媒體操作數(shù)。

Visual C++延伸閱讀

Visual C++是微軟公司開發(fā)的一個IDE(集成開發(fā)環(huán)境),換句話說,就是使用c++的一個開發(fā)平臺.有些軟件就是這個編出來的...另外還有VB,VF.只是使用不同語言...

 

[[9607]] 

經(jīng)典的Visual C++ 6.0

但是,VC++是Windows平臺上的C++編程環(huán)境,學(xué)習(xí)VC要了解很多Windows平臺的特性并且還要掌握MFC、ATL、COM等的知識,難度比較大。Windows下編程需要了解Windows的消息機制以及回調(diào)(callback)函數(shù)的原理;MFC是Win32API的包裝類,需要理解文檔視圖類的結(jié)構(gòu),窗口類的結(jié)構(gòu),消息流向等等;COM是代碼共享的二進制標準,需要掌握其基本原理等等。

 

Visual Studio 2010 全球發(fā)布會

【編輯推薦】

  1. Visual C++編譯器常用選項設(shè)置
  2. Visual C++ 2008新特性:MFC的增強
  3. 利用Visual C++制作應(yīng)用程序啟動畫面
  4. 簡介Visual C++ 2008 Feature Pack
  5. Visual C++開發(fā)工具與調(diào)試技巧整理
責(zé)任編輯:彭凡 來源: 51CTO
相關(guān)推薦

2010-02-04 09:17:26

Visual Stud

2010-01-13 09:11:04

Visual Stud

2010-03-11 16:09:36

Visual Stud

2011-07-13 11:20:55

VC++ODBC

2010-04-01 09:06:05

C# 2010

2010-01-14 10:56:43

Visual C++

2010-03-23 16:53:19

Visual Stud

2010-04-07 09:46:05

2009-08-21 13:29:20

Visual Stud

2009-05-26 10:01:51

Visual StudVisual C++C++0x

2010-01-27 17:42:58

VC++開發(fā)環(huán)境

2009-12-15 17:02:29

Vs.Net 2010

2009-12-02 09:43:38

Visual Stud

2009-09-02 16:21:17

Visual BasiC#語言

2010-03-19 13:17:26

Parallel

2009-11-24 09:00:02

Visual Stud

2010-07-15 08:50:09

SharePointVisual Stud

2010-07-20 08:43:00

Visual Stud

2009-05-25 15:42:03

Visual StudC#

2009-09-07 09:22:17

Visual Stud代碼片段
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 欧美性网 | 成人一区二 | 蜜桃久久 | 日韩精品中文字幕一区二区三区 | 国产精品中文在线 | 亚洲三区视频 | 日韩一区二区三区在线视频 | 中文字幕在线人 | 国产精品久久亚洲7777 | 精品美女视频在线观看免费软件 | 成人在线视频一区 | 99久久国产综合精品麻豆 | 久久免费精品 | av中文在线播放 | 免费观看成人鲁鲁鲁鲁鲁视频 | 久久综合一区 | 国产一区二区激情视频 | 色免费视频 | h片在线看 | 国产免费又黄又爽又刺激蜜月al | 国产在线网址 | 亚洲视频国产视频 | 黄色在线免费看 | 久久天堂 | 久久亚洲一区二区 | 日韩a在线观看 | 国产免费观看一区 | av一区二区三区四区 | 久久久精品 | 亚洲成人综合网站 | 免费国产视频 | 国产91精品在线 | 黄色大片在线播放 | 久久精品无码一区二区三区 | 日本五月婷婷 | 亚洲一区二区电影网 | 国产精品久久久久久久久久久久久久 | 成人免费网站 | 亚洲美女视频 | 视频一二区 | 久久国产精品久久 |