ReSharper C++ 2023 Crack
ReSharper的AI助手会考虑项目中使用的语言和技术。这种上下文感知可以一开始就调整其响应,为您节省时间和精力。
您可以在查询中包含部分源代码。ReSharper将检测你发送或粘贴到聊天中的代码,并正确格式化,而人工智能模型将解释代码背后的逻辑,并帮助你重构、发现问题或记录它。
C++23支持
if consteval语句是C++23中一个新的常量求值特性,它进一步发展了C++20 consteval和std::is_constant_evaluated()的思想。
此版本引入了对if consteval的支持,并带来了一组相关的检查:
consteval if总是常量。
std::is_constant_evaluated始终计算为常量。
if可以替换为if consteval。
增加了对C++23标准库中引入的命名模块std和std.compat的支持。如果使用Microsoft Visual Studio 17.6或更高版本,现在可以使用import std或import std.compat导入整个标准库,而不用使用预编译的头或包含特定的标准库头。
在C++23之前,所有运算符都必须是非静态成员函数。然而,调用运算符通常与无成员函数对象一起使用,在这种情况下,允许运算符是静态的可以产生更高效的代码。C++23允许运算符()和运算符[]都是静态的。
C++20支持
当在内部处理模块时,ReSharper C++现在实现了丢弃不可丢弃的声明,显著提高了在全局模块片段中包含大量头的模块的性能。
为了更好地支持CMake项目中的模块,已经实施了一些更改。ReSharper C++现在将.cpm文件识别为模块接口,并包括对位于项目文件夹之外的模块的实验性支持。
C++20的新[[no_unique_address]]属性表示类的非静态数据成员不需要唯一地址,这使编译器能够以更有效的方式布置类的成员。ReSharper C++现在在计算对象大小时会考虑[[no_unique_address]]。
此版本还实现了最近接受的C++20缺陷报告,该报告允许使用UTF-8字符串文字初始化char或无符号char数组。
安全删除重构
引入了安全删除重构,使您可以安全地从源代码中删除符号。这种重构可用于类、函数、变量、枚举器、命名空间,甚至概念。
在删除符号之前,ReSharper C++会搜索其用法,并允许您预览对源代码的更改,这样您就可以确保所有删除都是预期的。如果您试图删除一个复杂的实体,如类或命名空间,ReSharper C++将递归地检查其所有成员的使用情况。
虚幻引擎
改进了索引蓝图的性能。第一次打开项目时,ReSharper C++会对所有Blueprint资产进行索引,以增强查找用法等功能,并直接在文本编辑器中显示序列化数据的值。
以前,ReSharper C++会以与C++代码相同的优先级对这些资产进行索引,这意味着项目需要更长的时间才能准备好工作。现在,它将在对C++代码进行索引后,在后台对资产进行索引,而不会干扰您的工作。
使用标准赋值语义改进了包装器类型的智能完成。
对于虚幻引擎5.1项目,引入了对UE_INLINE_GENERATED_CPP_BY_NAME宏的支持,该宏允许您将生成的文件内联到模块中,以缩短编译时间。