ReSharper C++添加了新的 inlay 提示,使隱藏的類型轉換在編輯器中可見,以便您了解它們的潛在性能和正確性影響。
ReSharper C++第二個檢查建議用 標記可以在編譯時評估的變量constexpr,這可以帶來更快的性能和更好的編譯時檢查。
全新編程語言, 現代化檢查- 此版本包括一些新的檢查,以幫助您實現代碼的現代化。
可以使用結構化綁定代替tie(..)- 從 C++17 開始,您不再需要使用std::tie()或boost::tie()解包元組或對 - 結構化綁定聲明可幫助您簡化代碼。
ReSharper C++現在可以使用模板別名或變量模板來簡化類型特征- C++14 別名模板讓您可以縮短 C++11 類型特征表達式。
std::size現在可以使用- 此檢查建議將其std::size用作類型安全的替代方案,以替代容易出錯的 C 習語來計算數組大小。
可以使用零初始化代替memset- 零初始化導致更簡潔的代碼并防止各種memset相關錯誤。
內聯函數重構- 新的內聯函數重構可讓您快速用函數體替換函數調用。ReSharper C++ 將執行必要的轉換、處理所有名稱沖突并重新格式化生成的代碼。
ReSharper C++您現在將看到隱式轉換的特殊圖標。或者,您可以選擇將轉換顯示為文本提示。
ReSharper C++ 現在顯示不同類型類類型轉換的提示,包括對象復制、使用轉換構造函數的對象初始化或聚合初始化和對轉換運算符的調用。
您現在還可以為內置類型之間的標準轉換啟用提示,例如,可能會丟失精度或更改類型符號的數字類型之間的轉換。
不變性檢查
與不變性相關的分析可以幫助您保持代碼的可讀性和正確性。通過添加兩項新檢查,ReSharper C++ 現在涵蓋了 C++ 核心指南的常量和不變性部分中的所有規則。
第一個新檢查擴展了對引用和指針類型的函數參數的不變性分析。ReSharper C++ 現在會通知您是否可以將指針或引用傳遞給const,從而保證函數不會修改相應的函數參數。
編碼幫助
默認情況下,ReSharper C++ 生成具有空主體的函數,但現在您可以指定生成的函數是應該拋出std::logic_error、返回默認值還是包含不可編譯的代碼。ReSharper C++ 還將自動從覆蓋函數的主體調用基本函數。
ReSharper C++添加了一個新的上下文操作,可讓您將任何字符串轉換為 C++11 原始字符串文字,當字符串文字包含特殊字符時更易于閱讀。轉換是雙向的,因此您也可以將原始字符串文字轉換為常規字符串文字。
如果您想快速查閱 cppreference.com 以了解標準庫類或函數的詳細信息,現在可以單擊快速文檔彈出窗口 ( Ctrl+Shift+F1)中的以在瀏覽器中打開相應頁面。
當您按下Backspace空行或插入符號左側帶有空格或制表符的行時,ReSharper C++ 現在可以將插入符號置于適當的縮進位置,而不是一次將其移回一個位置。
虛幻引擎- ReSharper C++ 現在支持使用來自虛幻啟動器和 GitHub 源的虛幻引擎 5。
在虛幻引擎項目的 .Build.cs 和 .Target.cs 文件中,ReSharper C++ 的代碼完成功能現在會建議可用模塊和插件的列表。
添加模塊或插件后,缺少依賴項的新檢查將突出顯示任何必須在 .uproject 或 .uplugin 文件中引用的內容。使用隨附的快速修復程序,只需單擊一下即可將新模塊和插件添加到項目文件中。
在生成覆蓋函數的定義時,ReSharper C++ 現在將使用慣用的 Super 類型別名從生成的主體調用覆蓋函數。
ReSharper C++改進了冷啟動的性能和內存使用。ReSharper C++ 現在索引虛幻引擎代碼庫的速度提高了 10%。
其他變化
捆綁的 Clang-Tidy 已更新到 Clang 12,添加了來自最新 LLVM 版本的新檢查。它在復雜文件中的性能,特別是在 C++20 項目中的性能得到了改進。
添加了一項新檢查,當您將無符號表達式與 0 進行比較時會發出警告,這可能會導致無限循環或無法訪問的代碼。
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态