在 C++ 中导航和搜索
按名称导航
JetBrains Rider 可以通过几个按键将您带到任何代码项或文件。 导航范围包括整个解决方案中的符号和文件,以及标准库、外部依赖项中的所有符号和文件。
按名称查找解决方案中的代码项
要使用统一访问所有搜索结果,请按 Ctrl+N, G 或按两次 Shift 显示一个弹出窗口,您可以在其中开始输入并找到与您的输入匹配的 解决方案中的代码项。
如果您想 将搜索限制为类型 (类、接口、结构或枚举),请选择 。
如果您想 搜索符号 (类型、方法、属性、字段等),请按 Ctrl+Alt+Shift+N。
您还可以通过按 Ctrl+Shift+N 仅搜索文件。
JetBrains Rider 还允许您通过按下 Ctrl+F12 后输入名称, 跳转到当前文件中的类型和类型成员。
调用上述任意命令后,开始输入目标项、其 CamelHumps 缩写和/或通配符。 匹配项列表会随着您的输入逐渐缩小,最可能的候选项会显示在列表的顶部。
转到声明
使用此命令从符号的任何用法导航到符号的声明。 您可以从 解决方案资源管理器、 结构窗口 和其他工具窗口中调用此命令。
要导航到相反方向(符号使用位置),您可以使用 转到符号的用法 命令。
要转到符号声明,请按 Ctrl+B ,在主菜单中选择 ,或按住 Ctrl 键单击符号。
转到声明适用于非依赖 decltype 说明符和 lambda(跳转到 lambda 主体)。 您可以从声明跳转到签名不匹配的定义(例如,从更改后的成员函数声明跳转到其旧签名的定义),反之亦然。 转到声明在初始项目索引期间也可用。
转到声明还适用于未解析的标识符、注释和宏主体。 JetBrains Rider 将找到所有名称匹配的符号,并允许您导航到它们。
在不受支持的 C++ 文件中(例如,C++/CX),转到声明会自动回退到相应的 Visual Studio 导航操作。
Go to file member
使用此命令快速导航到当前文档中的特定类、函数或字段。
要导航到文件成员,请按 Ctrl+F12 或从主菜单中选择 。
转到符号的类型
当 转到声明 命令将您导航到符号声明的位置时, 类型声明 命令会导航到当前选定符号的类型声明。 例如,如果您有一个变量 Foo myVar = new Foo(); ,并在 myVar 的使用处调用此命令,它将带您到类 Foo 的声明。 如果您在函数上调用此命令,它会导航到该函数的返回类型。
此命令也适用于 typedef。 您可以从 解决方案资源管理器、 结构窗口 和其他工具窗口中调用此命令。
要导航到符号的类型,请按 Ctrl+Shift+B 或从主菜单中选择 。
转到符号的用法
此命令允许您从符号的声明或任何其他用法快速导航到符号的特定用法。 您可以从 解决方案资源管理器、 结构窗口 和其他工具窗口中调用此命令。 相反方向的导航可通过 转到声明 命令实现。
使用此命令获得的用法列表与 查找用法 的结果相同。 但对于用法数量有限的符号,当您正在寻找特定用法并希望在不打开 查找 窗口 的情况下直接跳转到该用法时,此命令更为方便。
要转到符号的用法,请按 Ctrl+Alt+F7 或从主菜单中选择 。
转到基本符号
此命令允许您沿继承层次结构向上导航到当前符号的基类型或方法。 您可以从 解决方案资源管理器、 结构窗口 和其他工具窗口中调用此命令。
相反方向的导航可通过 转到派生符号 和 转到实现 命令实现。
要导航到基符号,请按 Ctrl+U 或从主菜单中选择 。
对于从其他类型继承或实现接口的类型,以及覆盖、实现或隐藏基类型成员的成员,JetBrains Rider 会显示 特殊的边距图标 (例如,
)。 将鼠标悬停在图标上以查看基符号并沿继承层次结构向上导航。
转到实现
此命令帮助您找到类型和成员的实际实现——换句话说,定位它们执行的源代码。 例如,从基类型或成员,您可以跳转到其最终实现,绕过继承链中的中间步骤;从接口成员的用法,您可以跳转到该成员实现的所有位置。
您可以从 解决方案资源管理器、 结构窗口 和其他工具窗口中调用此命令。 如果需要,您可以使用 转到基符号 命令以相反的方向导航。
要导航到实现,请按 Ctrl+N, K 或从主菜单中选择 。
转到派生符号
此命令获取某个类型或成员的所有派生符号列表,并允许您直接导航到继承层次结构中的其中一个。 如果您正在寻找实际实现,并且对继承链的中间步骤不感兴趣,请使用 转到实现。
要导航到派生符号,请按 Ctrl+Alt+B 或从主菜单中选择 。
在头文件和源文件之间切换
对于所有具有单独声明和定义的符号,JetBrains Rider 会在左侧显示 导航到声明/定义
操作指示器。 您可以单击此指示器或按 Alt+Enter 快速在符号的声明和定义之间切换。
还有更多方法可以在头文件和相应的源文件之间切换,反之亦然:
按下 Alt+O 。
按 Ctrl+Shift+G 或从主菜单中选择 ,然后在 导航到 弹出窗口中选择 切换头文件/源文件。
Ctrl - 单击符号名称。
转到主模板/特化
如果类或函数模板有多个特化,JetBrains Rider 允许您在主模板/特化之间切换。
当光标位于主模板或其中一个特化时,有两种方法可以在特化之间导航:
无论哪种方式,都会出现一个包含所有特化的弹出窗口,您可以在其中选择所需的特化:

查找用法
此命令允许在 解决方案和引用的程序集 中查找一个或多个符号的所有用法。 您可以从符号的声明或任何其他用法开始搜索。 您可以从 解决方案资源管理器、 结构窗口 和其他工具窗口中调用此命令。
如果有多个用法,JetBrains Rider 会帮助您在 查找 窗口 中 分析结果。
要查找当前符号的用法,请按 Alt+F7 或从主菜单中选择 。
高亮显示文件中的用法
编辑器 会自动高亮显示光标处符号的用法,这在短文件和小范围的局部变量中非常方便。 然而,这种高亮方式在较大的上下文中并不总是有效,因为只有当光标停留在符号上时,选中状态才会存在。
还有一种与光标无关的高亮方式,它会一直保留,直到您按下 Esc ,并为读写访问使用情况应用不同的 可配置 颜色。 您可以为单个项目或多个不同项目同时切换此高亮,然后使用快捷键在高亮之间跳转。
要查找当前符号及相关实体的用法,请按 Ctrl+Shift+F7 或从主菜单中选择 。
转到包含声明
当您的插入符号位于类型或函数的主体内的任何位置时,您可以通过一个快捷键跳转到该类型或函数的声明。
要转到包含的声明,请按 Alt+Shift+[。
转到下一个/上一个成员
使用 上/下一个方法 命令,您可以快速在代码文件中的相邻成员和嵌套类型之间,或在标记文件中的相邻标签之间导航。
要调用这些命令,请按 Alt+Down/Alt+Up 或从主菜单中选择 。
在Solution Explorer中定位
此便捷的导航功能允许您展开解决方案资源管理器中的树,自动滚动并高亮显示与当前文档对应的项。 当您有一个庞大的解决方案,或者屏幕空间有限,迫使您将解决方案资源管理器窗口缩小到极限时,这个功能特别有用。
要转到相关文件,请按 Ctrl+J, P。
导航到最近的位置
JetBrains Rider 会跟踪您的操作和导航历史,并提供一些命令,帮助您导航到您编辑过或仅查看过代码的位置。
导航文件结构
使用 JetBrains Rider,您可以通过 结构窗口 导航当前文档的结构,这大大简化了大型文件的导航。 该窗口与 编辑器 同步:当您切换到另一个 编辑器 选项卡时,窗口会显示相应文件的结构。
要打开 结构窗口,请按 Alt+7 或从主菜单中选择 。

导航到操作
JetBrains Rider 帮助您快速找到并应用其任何操作,而无需在菜单中逐一查找。 所谓 操作 ,是指当前光标位置可用的可执行命令或任何全局命令,例如打开工具窗口的命令。
您还可以按名称搜索并导航到 JetBrains Rider 的首选项,甚至直接在弹出菜单中更改布尔值的首选项。
要查找并执行 一个 JetBrains Rider 操作,请按 Ctrl+Shift+A 或从主菜单中选择 。
书签
如果您希望稍后返回代码中的某个位置,可以在解决方案或 库代码中为任何代码行添加书签。
您可以使用两种类型的书签:
带助记符的书签——最适合标记您经常引用的代码行,例如当前解决方案中的前 10 个位置。 您最多可以同时拥有 10 个编号书签。 它们通过以下图标显示在左侧 编辑器 边距:
.png)
为此类书签使用专用快捷键: Ctrl+Shift+[digit] 切换带有此数字的书签; Ctrl+[digit] 导航到带有此数字的书签。
匿名书签——允许数量不限,因此您可以标记任何您认为值得以后返回的代码行。 它们通过以下图标显示在左侧 编辑器 边距:
.png)
您可以从书签弹出窗口切换此类书签并导航它们。
如需更多信息,请参阅 书签
待办事项资源管理器
JetBrains Rider 提供了一种简单的方法来跟踪任务和代码中的 技术债务——匹配 特定模式的代码项(注释、字符串字面量或标识符)可以在编辑器中以及整个解决方案中通过 TODO 窗口轻松定位。
如需更多信息,请参阅 TODO 列表