11

下面有两个对函数 B:Bla 的调用,但是查看调用层次结构 (Cntl-K Cntl-T),然后查看 A:Bla 和 B:Bla 中的每一个的“调用到”会得出一个调用将发送到 A一个电话会打给 B。

我正在处理一个非常大的代码库,有时我想要一个函数的所有调用,我不想为继承链中的每个函数单击“调用”。因此,对于下面的示例,我希望“Calls to”返回两个调用,无论我是在 A:Bla 还是 B:Bla 上调用它。

using System;

class A
{
    public virtual int Bla() {
        return 65;
    }
}

class B : A
{
    public override int Bla()
    {
        return 66;
    }

    int Helper()
    {
        return this.Bla();
    }

    static void Main()
    {
        A obj = new B();
        Console.WriteLine(obj.Bla());
        Console.Read();
    }
}
4

4 回答 4

8

您可以使用“查找所有引用”功能,突出显示有问题的方法并按 Ctrl + F12,或右键单击并选择查找所有引用。

这将在“查找符号结果”窗口中显示结果。

请参阅此链接以获取更多详细信息。http://www.blackwasp.co.uk/VSFindAllReferences.aspx

于 2013-07-05T21:54:41.923 回答
3

在 Visual Studio 2015 中,尝试查看 | 调用层次结构,或Ctrl + Alt + K在标准键盘映射上。这会产生一个带有“调用”和“调用”子树的树。

不幸的是,与 Eclipse CDT 不同,这个调用图似乎没有被索引。

于 2017-05-15T18:00:14.197 回答
2

以下是函数引用的基本快捷方式:

  • 查找所有参考资料:Shift + Alt + F12
  • 查看参考:Shift + F12

使用 Windows 版本 1.31.1

于 2019-02-19T20:15:51.953 回答
1

如果有人在这里寻找使用 VS Code 的方法:

  • 突出显示方法并使用shift+ F12,或
  • 右键单击一个方法并选择Find All References
于 2018-10-23T15:25:33.050 回答