最近的連載中有不少內容涉及到C++20中的內容,例如concept等。可是因爲C++20還屬於新生事物,不只能夠參考的例子少,找到一個能夠體驗C++20功能的開發環境都困難。本文介紹使用微軟VisualStudio2019預覽版體驗C++20新特性的方法。c++
下載並安裝VisualStudio體驗版編程
如下是體驗版和正式版的下載地址,和正式版稍有不一樣:微信
https://visualstudio.microsoft.com/zh-hans/vs/preview/函數
上圖中選擇下載社區版(Community)下載在線安裝包。visual-studio
安裝包開始執行以後,選擇下圖中【使用C++的桌面開發】並按照提示進行安裝。網站
建立C++20項目spa
啓動VisualStudio2019預覽版以後,按照下圖構建【控制檯應用】。.net
修改編譯器設定設計
項目構建完成以後,打開項目設定畫面,以下圖所示選擇【語言】設定,並將【C++語言標準】修改成【預覽-最新C++工做草案中的功能(/std:c++latest)】orm
編譯並執行
從2019年9月10日的預覽版16.3開始,VisualStudio2019開始支持concept特性,消息發佈的連接以下:
https://devblogs.microsoft.com/cppblog/c20-concepts-are-here-in-visual-studio-2019-version-16-3
可是,若是真是用VisualStudio預覽版編譯concept相關代碼(好比上面連接中的代碼)時,會發生編譯錯誤。緣由僅僅是由於代碼智能解析功能還不支持concept特性。對策也很簡單,只要按照下圖選擇生成方式爲【僅生成】便可正常編譯經過(若是使用上述示例代碼,還須要本身加一個main函數)。
主要編譯器對C++20的支持狀況
目前VisualStudio2019對已經支持concept相關功能,而range相關功能正在開發中。主流編譯器對C++20的支持狀況能夠參照下面的連接(中文網站稍有落後):
https://en.cppreference.com/w/cpp/compiler_support
以爲本文有幫助?請分享給更多人
關注【面向對象思考】,天天前進一小步
有任何疑問,歡迎留言提問或討論
面向對象設計,面向對象編程,面向對象思考!
本文分享自微信公衆號 - 面向對象思考(OOThinkingDalian)。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。