999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

簡述VS 2010中的新增C++/MFC功能

2010-12-31 00:00:00沈專國,劉兆乾
電腦知識與技術 2010年21期

概述:VS 2010 通過添加C++0x 標準核心語言功能,并通過修改標準庫來利用這些新的語言功能,提供了一種更為先進的編程模型。有新的并行編程庫和可簡化并行程序的創建工具。開發人員的整體性能和工作效率的得到提高。在設計時、生成時、編譯時和鏈接時從改進的庫性能和其他功能有了很大的改進。

關鍵詞:VS 2010; C++/MFCIntelliSense

中圖分類號:TP311文獻標識碼:A文章編號:1009-3044(2010)21-5780-02

Brief VS 2010 in C++/MFC function

SHEN Zhao-guo,LIU Zhao-qian

(Biological Engineering College Yancheng, Yancheng 224051, China)

Abstract: VS 2010 by adding the core C++0 x standard language features, and by modifying the standard library to take advantage of these new language features, provides a more advanced programming model. A new parallel programming library and the creation of tools to simplify parallel programming. Developer's overall performance and efficiency is improved. build, the compile time and link database from the improved performance and additional functionality has been greatly improved.

Key words: VS 2010; C++/MFC intelliSense

1 更快的編譯和更好的性能

VS 2010 還通過多方面增強編譯器后端的代碼生成功能,提高了使用VC ++編譯器生成的應用程序的編譯速度、質量和性能。某些特定應用程序的性能取決于工作集。通過此版本中進行的多項優化,x64 體系結構的代碼大小縮減了3%到10%,從而提高了此類應用程序的性能。

單指令多數據代碼生成(對于游戲、音頻、圖形開發非常重要)已經過優化,可以提高性能和代碼質量。所做改進包括打破錯誤依賴關系、向量化常量向量初始化以及通過更好地分配 XMM 寄存器消除多余的負載、存儲和移動。還優化了__mm_set_**和__mm_set1_**系列。

為改進性能,應使用鏈接時間代碼生成和按配置優化生成應用程序。x64 平臺上的編譯速度已通過優化x64代碼生成而得到提高。LTCG編譯通常比非LTCG編譯需要更長時間,對于大型應用程序更是如此。在VS 2010中,LTCG 編譯速度提高高達30%。引入了一個寫入PDB 文件的專用線程,因此在使用/DEBUG開關時會看到鏈接時間的縮減。

通過添加對被檢測二進制文件的非鎖定版本的支持,PGO 檢測的運行速度有所提高。還有一個新的POGO選項 PogoSafeMode,用于指定優化應用程序時使用安全模式還是快速模式。快速模式是默認行為。安全模式是線程安全的,但比快速模式要慢。

編譯器生成的代碼的質量有所提高。現在完全支持高級矢量擴展 (AVX),這對于AMD和Intel處理器中通過固有選項和/arch:AVX選項進行大量浮點計算的應用程序非常重要。使用/fp:fast選項可以使浮點計算更為精確。

2 IntelliSense和設計時效率

VS 2010 中包含了全新的IntelliSense和瀏覽基礎結構。除了幫助調整和響應具有大型基本代碼的項目,此基礎結構改進還帶來了一些新的設計時效率功能。

如實時錯誤報告和快速信息工具提示這樣的IntelliSense功能基于新的編譯器前端,即使代碼文件正在修改中,該前端也能分析完整的轉換單元以提供關于代碼語義的豐富且準確的信息。

所有代碼瀏覽功能現在都使用SQL中存儲的源代碼信息,該數據庫啟用了索引功能并具有固定的內存占用量。VS 2010始終具有響應能力,當編譯單元由于頭文件發生更改而重新分析時,不再需要等待。

IntelliSense實時錯誤報告在瀏覽和編輯代碼時顯示編譯器質量語法和語義錯誤。將鼠標懸停在錯誤上可查看錯誤消息(圖1)。錯誤列表窗口也會顯示當前查看的文件中的錯誤以及編譯單元其他位置的 IntelliSense 錯誤。不必進行生成即可獲得所有這些信息。

此外,在鍵入#include時會在下拉列表中顯示相關包含文件的列表,此列表隨您的鍵入而精簡。

3 全新的定位功能

新的“定位”功能將幫助您更有效地搜索文件或符號。此功能根據您鍵入的子串給出實時搜索結果,將輸入字符串與任意項目中的符號和文件對照匹配,圖2。此功能還適用于C#和VB文件,并且可進行擴展。

調用層次結構可以定位從某一特定函數調用的所有函數,以及對特定函數進行調用的所有函數。這是以前的VS 版本中存在的“調用瀏覽器”功能的改進版本。調用層次結構”窗口組織得更好,對同一窗口中出現的任何函數同時提供調用來源和調用目標樹。

雖然所有代碼瀏覽功能都可用于純C++和C++/CLI,但像實時錯誤報告和快速信息這樣的 IntelliSense 相關功能在VS 2010最終版中不可用于C++/CLI。

此版本中還對其他一些主要編輯器功能做出了改進。用于在整個解決方案中搜索對代碼元素的引用的“查找所有引用”功能現在更為靈活。使用右鍵單擊上下文菜單中的“解析結果”選項可進一步精簡搜索結果。

4 標準庫改進

標準C++庫的大部分都已重新編寫,以便利用新的C++0x 語言功能并提高性能。標準庫充分利用rvalue引用來提高性能。如向量和列表這樣的類型現在有其自己的move構造函數和move賦值運算符。向量重新分配通過選擇move構造函數利用move語義,因此如果類型有move構造函數和move賦值運算符,庫將自動選擇使用。

現在,在構造對象時,可以在新的C++0x 函數模板make_shared 的幫助下同時創建一個指向該對象的共享指針:

auto sp =make_shared>

(args);

在VS 2008 中獲得同樣的功能須編寫代碼,使用 make_shared 更方便、更強大并且效率更高(執行一次動態內存分配而不是兩次)。 庫中現在包含一個新的更加安全的智能指針類型 unique_ptr。結果就是棄用了auto_ptr;unique_ptr通過變得可移動但不可復制避免了auto_ptr的缺陷。這允許您實現嚴格的所有權語義而不影響安全性。它也適用于識別rvalue引用的VC++容器。現在容器有了新的成員函數cbegi 和cend,提供了一種不考慮容器類型而使用const_iterator 進行檢查的方式:

vector v;

for (auto i = v.cbegin(); i != v.cend(); ++i) { }

VS 2010 在標準庫中增加了各種C++0x 文章中建議的大多數算法。標準庫中現在提供了 Dinkumware 轉換庫的一個子集,因此可以輕松進行像 UTF-8 到 UTF-16 這樣的轉換。此外,上一版本中存在于命名空間 std::tr1 中的許多 TR1 功能現在都納入了標準庫中的std命名空間。

5 總結

VS 2010是 VC ++發展過程中的一個主要版本,為開發人員在很多方面帶來了方便。在本文中,只是介紹了眾多改進中的常見的幾個功能,這些功能使得開發的效率得到明顯提升。

參考文獻:

[1] 王金庫,孫連云.Visual C++程序設計實訓教程[M].北京:科學出版社,2004.

[2] 王育堅.Visual C++面向對象編程教程[M].北京:清華大學出版社,2009.

注:本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文

主站蜘蛛池模板: 这里只有精品在线| 久久国产香蕉| 国产成人精品综合| 四虎影视国产精品| 亚洲AV无码乱码在线观看代蜜桃| 成人在线欧美| 久久网综合| 色婷婷在线影院| 国产天天色| 中文字幕在线欧美| 国产精品香蕉在线| 无码有码中文字幕| 国产在线观看一区二区三区| 免费无码一区二区| 丝袜高跟美脚国产1区| 97一区二区在线播放| 日韩123欧美字幕| 99激情网| 国产乱人伦精品一区二区| 亚洲男人的天堂视频| 婷婷六月综合网| 一本一道波多野结衣一区二区| 在线亚洲小视频| 成人午夜精品一级毛片| 久久精品视频一| 国产经典三级在线| 欧美精品亚洲精品日韩专区| 欧美三級片黃色三級片黃色1| 中文字幕精品一区二区三区视频 | 最新亚洲av女人的天堂| 日韩中文精品亚洲第三区| 久久综合丝袜长腿丝袜| 午夜福利网址| 久久大香伊蕉在人线观看热2| 日韩a在线观看免费观看| 国产亚洲精品无码专| 波多野结衣视频一区二区| 精品一区二区三区波多野结衣| 日韩在线1| 国内毛片视频| 国产成人久久综合777777麻豆| 国产噜噜噜| 亚洲 日韩 激情 无码 中出| 欧美精品亚洲精品日韩专| 啪啪永久免费av| 激情無極限的亚洲一区免费| 久久精品人人做人人爽| 亚洲欧美精品一中文字幕| 亚洲一级毛片| 99久久精品国产麻豆婷婷| 国产精品高清国产三级囯产AV| 婷婷综合色| 亚洲欧美日韩精品专区| 亚洲欧洲一区二区三区| 亚洲天堂伊人| 国产在线视频二区| 免费又黄又爽又猛大片午夜| 玖玖精品在线| 国产精品视频久| 高清视频一区| 国产精品亚洲欧美日韩久久| 真实国产精品vr专区| 国产凹凸视频在线观看| 无码丝袜人妻| 女人毛片a级大学毛片免费| 九九香蕉视频| 中国毛片网| 成人毛片免费在线观看| 日韩在线播放欧美字幕| 伊人精品成人久久综合| 四虎免费视频网站| 亚洲手机在线| 亚洲人成在线精品| m男亚洲一区中文字幕| 女同久久精品国产99国| 免费jizz在线播放| 在线免费亚洲无码视频| 国产91麻豆免费观看| 91亚瑟视频| 97在线公开视频| 亚洲天堂.com| 欧美A级V片在线观看|