支持的 C/C++ 规范 | C/C++ | C/C++ |
| C++/CLI | C++/CLI |
| C++/CX | 不支持 |
| HLSL | HLSL |
代码分析和纠正 | 实时设计时代码分析(编译器错误和警告) | 实时设计时代码分析(编译器错误和警告以及 230+ 个专有代码检查) |
个用于解决代码问题的快速修复 | 290 多个用于解决代码问题的快速修复 |
| 集成的 Clang-Tidy 诊断和检查 | 集成的 Clang-Tidy 诊断和检查 |
| | 集成的 UnrealHeaderTool 诊断和检查 |
| | 拼写检查 |
| | 包括分析器 |
| | 报告任何范围,直至整个解决方案内的所有错误和代码质量问题 |
| | 可调的代码检查:可以直接从 Alt+Enter 菜单中配置 5 个严重性级别 |
| | 在解决方案或团队级别共享代码分析设置 |
重构和代码转换 | Rename | Rename |
Change signature | Change signature |
| Extract function | Extract method |
| 实现 pure virtual | 生成重写成员 |
| 创建声明/定义 | 通过声明生成定义/实现 |
| Move function definition | Move implementation out of class scope |
| 转换为原始字符串文字 | 转换为原始字符串文字,反之亦然 |
| | 转换为作用域枚举 |
| | Introduce Field |
| | Introduce Namespace Alias |
| | 引入 typedef |
| | 引入 using 枚举 |
| | Introduce variable |
| | Inline Function |
| | Inline Variable |
| | 内联 typedef |
| | 超过 65 个上下文操作(自动化局部代码转换) |
编码辅助 | 代码补全 | 带有智能建议和骆驼拼写法匹配的代码补全 |
语法高亮显示 | 语法高亮显示(可为超过 25 种不同标识符配置颜色) |
| 代码元素的工具提示 | 带有高亮显示的语法和格式化文档注释的代码元素的工具提示 |
| 展开/收缩选择 | Extend/Shrink Selection |
| 注释选择(自动选择注释) | 注释选择,带行或块注释 |
| 快速信息和参数信息 | 快速文档和参数信息 |
| | 参数名称、类型名称、命名空间、类型转换和预处理器指令的嵌入提示; push-to-hint 模式 |
| | 重新排列代码元素 |
| | 自动添加缺失的 #include 指令 |
| | 导入补全和后缀补全 |
| | 补全语句 |
| | 选择包含声明 |
导航和搜索 | 导航到 | 随处搜索 |
转到声明 | 同样适用于未解析的标识符和注释,并有助于在用法和匹配的预处理器指令之间导航的 Go to Declaration |
| 查看定义 | 查看声明、用法、基本符号、实现 |
| 代码书签 | 代码书签 |
| 快速启动 | 查找操作和设置 |
| 查找引用 | 查找用法 |
| 生成 include 文件图 | includes 的层次结构视图 |
| 调用层次结构 | 不支持 |
| 转到符号 | 转到符号 |
| 转到类型 | 转到类型 |
| 转到文件 | 转到文件 |
| 转到文件成员 | 转到文件成员 |
| | 带模糊搜索的 Go to Text |
| | 转到基本符号 |
| | 转到派生符号 |
| | 转到相关文件 |
| | 转到附近的文件 |
| | 转到最近的位置和更改 |
| | 转到主要模板/专项 |
| | 切换头/源 |
| | 高亮显示文件中的用法 |
| | 在编辑器中在继承层次结构中上下导航 |
| | 按上下文的断点导航 |
| | 类型层次结构视图 |
| | 文件结构 |
| | 在 To-do 条目之间导航 |
| | 在 Solution Explorer 中定位当前文件 |
代码生成 | 代码段(模板) | 代码段(模板),包括实时、包围和后缀模板 |
从模板生成文件 | 从模板生成文件 |
| 通过代码补全生成代码 | 通过代码补全生成代码 |
| | 代码段的可视化编辑器(模板) |
| | 添加前向声明或插入带有导入补全的 #include 指令 |
| | 根据用法生成代码 |
| | 生成构造函数 |
| | 生成定义 |
| | 生成缺失的 case 语句 |
| | 生成文档注释 |
| | Generate missing members/Generate overriding members |
| | Generate copy and move operations |
| | Generate getters and setters |
| | Generate equality operators |
| | Generate relational operators |
| | Generate stream operations(包括 Boost.Serialization 函数) |
| | Generating hash function |
| | Generating swap function |
| | Generating Google Mock Methods |
| | Convert enum to string (generate enum-to-string helper)(可配置) |
| | 生成缺失的成员 |
代码样式和清理 | 重新设置代码格式 | 在任何范围内应用格式设置规则(使用 ReSharper C++ 自有的格式设置规则集) |
EditorConfig支持 | EditorConfig支持 |
| | Clang 格式支持 |
| | 从现有代码学习格式化规则 |
| | 用于配置所选代码的格式设置规则的可视化编辑器 |
| | File Formatting Info 窗口,用于浏览影响当前文件的设置值和文件 |
| | 带有预定义方案的可配置命名样式(STL、Google、LLVM、CamelCase、Microsoft) |
| | 用于排序 #include 指令的可配置规则 |
| | 用于初始化、声明、重写函数、auto 用法、cv 限定符位置和大括号的可配置语法样式 |
单元测试 | 单元测试资源管理器 | 单元测试资源管理器 |
用于 C++ 支持的 Microsoft Unit Testing Framework | 不支持 |
| Google Test 支持 | Google Test 支持 |
| Boost.Test 支持 | Boost.Test 支持 |
| CTest 支持 | 不支持 |
| | Catch 支持 |
| | doctest 支持 |
| | 从编辑器运行测试 |
| | 多个单元测试会话 |
调试 | 编辑器中的数据提示 | 在编辑器中具有可配置对象呈现的可搜索数据提示 |
断点工具窗口 | 带预览、上下文搜索、分组和导出的断点工具窗口 |
| | 内联监视 |
| | 步骤筛选器 |
Unreal Engine 支持 | | Unreal Engine 命名约定支持 |
| 集成的 UnrealHeaderTool 检查 |
| | 处理 HLSL 着色器文件 |
| | Unreal Engine 远程过程调用支持 |
| | Unreal Engine 反射说明符的代码补全 |
| | Unreal Engine 项目模型可以提供基于插件和模型引用的代码补全 |
| | 根据 .Build.cs、.Target.cs、.uproject 或 .uplugin 中的更改实时更新 |
管理设置 | 通过 Microsoft ID 同步设置 | 通过 VCS 或任何文件托管服务与团队同步设置和自定义模板 |
| | 设置层系统,用于无冲突地存储不同解决方案的不同设置 |
| | |