今年四月,微軟就有公布新的 Visual Studio 2022 會是第一款原生 64 位元的 Windows 整合式開發環境了~而從六月開始,微軟也不停地釋出新的預覽版,讓眾多的開發者幫忙找問題。
現在,Visual Studio 2022 終於推出正式版了!他的官方網站是 https://aka.ms/vs2022,官方的公告則是《Visual Studio 2022 now available》;下面則是官方的介紹影片:
這一版的 Visual Studio 版本編號是 17.0,詳細的更新項目、可以參考官方的 release note。
在個人來看,他比較大的變化,應該是:
Visual Studio 的圖形介面主程式(devenv.exe)變成原生 64bit
理論上可以透過現在電腦上大量的記憶體,來更快速地完成大型專案的載入、處理。
IntelliCode 強化
這項透過 AI 輔助的程式完成功能其實在 Visual Studio 2019 的時候就有了,在 2022 主要應該是加入了整行完成(Whole line completions、官方文件)的功能。
不過很遺憾的是,目前這項功能應該僅支援 Python、JavaScript、TypeScript、C#、Visual Basic;C++ 並不再支援列表中。
熱重載(Hot Reload)
這是一個滿實用的偵錯模式下的功能。這項功能允許開發者在偵錯模式下,在中斷程式執行的時候去修改程式碼、然後繼續偵錯。
不過實際上,在 Visual Studio 2019 後期更新(16.11、參考)的時候,就已經有引進這項功能,它的名稱是「套用程式碼變更」,現在算是在 2022 正式修改成「Hot Reload」吧~
這部分也可以參考官方部落格的《Update on .NET Hot Reload progress and Visual Studio 2022 Highlights》一文。
C++ Toolset
C++ Toolset 的版本這次也從 Visual Studio 2019 的 v142(14.2) 升級到 v143(14.3),基本上還維持 binary compatibility、也就是用之前的 Visual Studio 2019 編譯出來的 DLL、Lib 可以在 Visual Studio 2022 沿用。
不過個人碰到一個問題是,在使用新的 toolset 的時候,如果在 lambda 中使用 OpenMP 可能會出現衝突、而導致無法正確編譯;而雖然滿早就有回報這個錯誤了,但是直到正式版推出來是沒有解決(參考)… orz
新型的中斷點
加入新的「相依性中斷點」(Dependent Breakpoint),可以將中斷點設定成只有在觸發過某個特定的中斷點後,才會啟用。
此外,也可以設定為臨時性中斷點(Temporary breakpoint),讓他在觸發一次後就自動移除。(這邊中文版把「hit」翻譯成「點擊」其實很怪…)
Heresy 自己有注意到的,大概就這些了吧?其他的部分,有興趣就自己去看 release note 吧~
而考量到有需要使用的 extension(Qt VS Tools、CUDA)應該都還有對應 Visual Studio 2022 的版本,所以在工作環境上,應該還沒有辦法切換過去吧?