當前位置:編程學習大全網 - 編程語言 - vs2013的語言庫與vc++的語言庫的不同有哪些?

vs2013的語言庫與vc++的語言庫的不同有哪些?

不同的地方很多,具體妳可以看msdn上的vs2013的對於C++部分的改進。我想妳的VC++指的應該是VC6.0。相比來說VC6.0太老了。在VS2013裏使用的是最新的標準,也有好多新的特性,也更安全。

本文檔介紹 Visual Studio 2013 中的 Visual C++ 中新增和增強的功能。

有關 Visual Studio 2013 中其他附加內容的信息,請參見 Visual Studio 2013 中的新增功能。

改進的 ISO C/C++ 標準支持

編譯器

支持以下 ISO C++11 語言功能:

函數模板的默認模板參數。

委托構造函數

顯式轉換運算符。

初始值設定項列表和統壹初始化。

原始字符串文本。

可變參數模板。

別名模板。

已刪除的函數。

非靜態數據成員初始值設定項 (NSDMI)。

默認的函數。 *

支持以下 ISO C99 語言功能:

_Bool

復合文本。

指定的初始值設定項。

組合帶有代碼的聲明。

字符串文本轉換為可修改的值可通過使用新編譯器選項 /Zc:strictStrings 禁用。 在 C++98 中,已棄用從字符串文本轉換至 char *(和將寬字符串文本轉換為 wchar_t *)。 在 C++11 中,已將轉換完全移除。 雖然編譯器可以嚴格遵循該標準,但提供了 /Zc:strictStrings 選項,以便妳控制轉換。 默認情況下,該選項是關閉的。 註意,當妳在調試模式下使用此選項,STL 將無法編譯。

rvalue/lvalue 引用轉換。通過 rvalue 引用,C++11 可清晰地區分 lvalue 和 rvalue。 過去,在特定強制轉換方案中,Visual C++ 編譯器不提供此功能。 已添加新編譯器選項(/Zc:rvalueCast),以使編譯器與 C++ 語言的工作文件相符,(請參見第 5.4 節,[expr.cast]/1)。

未指定選項時,該默認行為與 Visual Studio 2012 中的相同。

說明

* 默認功能下,不支持使用 =default 逐壹請求成員移動構造函數和移動賦值運算符。

C99 庫

為下列標頭中缺少的函數添加了聲明和實現:math.h、ctype.h、wctype.h、stdio.h、stdlib.h 和 wchar.h。 同樣添加的還有新標頭 complex.h、stdbool.h、fenv.h 和 inttypes.h,以及在這些新標頭中聲明的所有功能的實現。 還有新的 C++ 包裝器標頭(ccomplex、cfenv、cinttypes、ctgmath),並且更新了許多其他內容(ccomplex、cctype、clocale、cmath、cstdint、cstdio、cstring、cwchar和 cwctype)。 有關更多信息,請參見 Visual Studio 2013 中的 C99 庫支持。

標準模板庫

支持 C++11 顯式轉換運算符、初始值設定項列表、範圍枚舉和 variadic 模板。

現在所有容器都支持 C++11 細化的元素要求。

支持這些 C++14 功能:

“透明運算符函子”less<>、greater<>、plus<>、multiplies<> 等。

make_unique<T>(args...) 和 make_unique<T[]>(n)

cbegin()/cend()、rbegin()/rend() 和 crbegin()/crend() 非成員函數。

<atomic> 接收多個性能增強。

<type_traits> 接收主要穩定性和代碼修復。

重大更改

對 ISO C/C++ 標準的改進支持可能需要對現有代碼進行更改,從而符合 C++11 並在 Visual Studio 2013 中的 Visual C++ 中正確編譯。 有關更多信息,請參見Visual C++ 中的重大更改。

有關新的 C++11/14 語言和 STL 功能的詳細信息,請參閱 C++11 功能(現代 C++) 和 Visual Studio 2013 中的 C++11/14 STL 功能、修復和重大更改

Visual C++ 庫增強功能

C++ REST SDK 已添加。 它具有 REST 服務的現代 C++ 實現。 有關更多信息,請參見 C++ REST SDK。

C++ AMP 紋理支持已改進。 現在包括對 mipmap 和新采樣模式的支持。

PPL 任務支持多個計劃技術和異步調試。 采用新 API,可為常規結果和異常條件創建 PPL 任務。

C++ 應用程序性能

自動向量化現在可以識別和優化更多 C++ 模式,加快妳的代碼運行速度。

ARM 平臺和 Atom 微型體系結構代碼質量增強功能。

__vectorcall 調用約定已添加。 使用 __vectorcall 調用約定來傳遞向量類型參數,從而使用向量寄存器。

新鏈接器選項。使用 /Gw(編譯器)和 /Gy(匯編)開關,使鏈接器優化生成精簡二進制文件。

C++ AMP ***享內存支持,可減少或消除 CPU 和 GPU 間的數據復制。

按配置優化選項 (PGO) 增強:

通過使用 PGO 實現已優化的應用程序工作集的縮減,從而提高性能。

面向 Windows 應用商店應用開發的新 PGO。

Windows 應用商店應用開發支持

支持值結構中的裝箱類型。現在可以使用可以為空的字段(例如與 IBox<int>^ 相對的 int)來定義值類型。 這意味著字段可以具有值,或者與 nullptr 相等。

更豐富的異常信息。C++/CX 支持能夠在整個應用程序二進制接口 (ABI) 中獲取和傳播各種異常信息的新 Windows 錯誤模型;這包括調用堆棧和自定義消息字符串。

Object::ToString() 現在為虛擬。現在可以重寫用戶定義的 Windows 運行時引用類型中的 ToString。

支持已棄用的 API。公*** Windows 運行時 API 現在可標記為已棄用並可收到壹條自定義消息,此消息顯示為生成警告並可提供遷移指南。

調試器改進。支持本機/JavaScript 互操作調試、Windows 運行時異常診斷和異步代碼調試(windows 運行時和 PPL)。

說明

除本節中介紹的 C++ 特定功能和增強功能外,Visual Studio 中的其他增強功能還可幫助妳編寫更好的 Windows 應用商店應用。 有關這些功能的詳細信息,請參見 Windows 8.1 功能指南。 有關新應用程序模板的詳細信息,請參見 Windows 應用商店應用的 C#、VB 和 C++ 項目模板。 有關新平臺功能的列表,請參見 Windows 8.1 預覽版:新 API 和功能。

診斷增強功能

調試器改進。支持異步調試和“僅我的代碼”調試。

代碼分析類別。現在可以查看代碼分析器的分類輸出,幫助妳找到並修復代碼缺陷。

XAML 診斷。現在可以診斷 XAML 中的 UI 響應和電池使用情況問題。

圖像和 GPU 調試改進。

在實際設備上遠程捕獲和重放。

同步 C++ AMP 和 CPU 調試。

改進的 C++ AMP 運行時診斷。

HLSL 計算著色器跟蹤調試。

三維圖形增強功能

圖像內容管線支持預乘 alpha DDS 格式。

圖像編輯器使用內部預乘 alpha 進行呈現,從而避免呈現暗的光暈等項目。

圖像和模型編輯器。現在圖像編輯器和模型編輯器的“著色器設計器”中支持用戶定義的篩選器創建。

IDE 與工作效率

用 C++ 編碼時,Visual Studio IDE 的重大改進將有助於提高妳的工作效率。

改進的代碼格式設置。妳可以將多個格式設置應用於 C++ 代碼。 使用這些設置,妳可以控制大括號和關鍵字、縮進、間距和自動換行的新行位置。當完成語句和塊並且將代碼粘貼到文件中時,代碼將自動進行格式化。 若要修改格式設置,請在 Visual Studio 的菜單欄上選擇“工具”、“選項”,依次展開“文本編輯器”、“C/C++”和“格式設置”節點,然後進行更改。 妳還可以使用“快速啟動”框來訪問這些選項。

大括號完成。現在,C++ 代碼會自動完成對應於這些開始字符的結束字符:

{ (大括號)

[ (方括號)

( (括號)

' (單引號)

" (雙引號)

附加 C++ 自動完成功能。

添加用於類類型的分號。

完成對原始字符串文本使用括號。

完成多行註釋 (/* */)

查找所有引用自動在後臺引用顯示出文本匹配列表後對其進行解析和篩選。若要禁用引用解析,可以在 Visual Studio 的菜單欄中選擇“工具”、“選項”,依次展開“文本編輯器”、“C/C++”和“高級”節點,然後在“引用”下更改“禁用解析”設置。

若要修改大括號完成設置,請在 Visual Studio 的菜單欄上選擇“工具”、“選項”,依次展開“文本編輯器”、“C/C++”和“常規”節點,然後進行更改。 妳還可以依次展開“文本編輯器”、“所有語言”和“常規”節點,更改所有 Visual Studio 語言的設置。

若要修改特定的 C++ 設置,請在菜單欄上依次選擇“工具”、“選項”,依次展開“文本編輯器”、“C/C++”和“高級”節點,然後進行更改。

基於上下文的成員列表篩選。無法訪問的成員已從 IntelliSense 成員列表中篩選出來。例如,私有成員不會在成員列表中顯示,除非妳修改了實現此類型的代碼。 當成員列表中處於打開狀態時,妳可以按 Ctrl+J 移除篩選的壹個級別(僅適用於當前成員列表窗口)。 可以再次按 Ctrl+J 移除文本篩選和顯示每個成員。

參數幫助滾動。參數幫助工具提示中顯示的函數簽名現在將根據實際輸入參數的數量而改變,而不是只顯示壹個隨機的簽名且不根據當前上下文更新。 函數顯示在嵌套函數上時,參數也會適當地幫助函數。

切換標頭/代碼文件。現在,通過使用快捷菜單或鍵盤快捷方式上的命令,可以在標題及其相應代碼文件之間切換。

可調整大小的 C++ 項目屬性窗口。

在 C++/CX 和 C++/CLI 中自動生成事件處理程序代碼。在鍵入代碼向 C++/CX 或 C++/CLI 代碼文件中添加事件處理程序時,編輯器可以自動生成委托實例和事件處理程序定義。 可以自動生成事件處理程序代碼時,會顯示工具提示窗口。

DPI 識別增強功能。現在,針對應用程序清單文件的 DPI 識別設置支持“每個高 DPI 識別監視器”的設置。

更快的配置切換。對於大型應用程序,切換配置(尤其是後續切換操作)將更快速地執行。

生成時效。

更快生成。許多優化和多核使用率使生成更加快速,對於大型項目來說尤為如此。 引用了 C++ WinMD 的 C++ 應用程序的增量生成也更加快速。

有關 IDE 中其他添加項和增強功能的信息,請參見 Visual Studio 2013 中的新增功能及其引用的其他文章。

  • 上一篇:3D和2D有什麽不同
  • 下一篇:立式車床原理圖
  • copyright 2024編程學習大全網