简体   繁体   English

如何在Visual Studio中的匿名命名空间内按函数名设置断点?

[英]How to set breakpoint by function name inside anonymous namespace in Visual Studio?

I have the following code: 我有以下代码:

namespace
{
    void Foo()
    {
    }
}

namespace Bar
{
    void Foo()
    {
    }
}

int main()
{
    Foo();
    Bar::Foo();

    return 0;
}

I want to put breakpoint on Foo() inside anonymous namespace by name (Ctrl+B key binding). 我想通过名称(Ctrl + B键绑定)将断点放在匿名命名空间内的Foo() )上。 I can do it for function inside named namespace Bar with no problem by name Bar::Foo . 我可以在命名空间Bar而没有名称Bar::Foo I tried anonymous namespace::Foo for anonymous namespace but VS fails to parse this name, i guess because of whitespace character in name. 我为匿名命名空间尝试了anonymous namespace::Foo ,但VS无法解析此名称,我猜是因为名称中有空白字符。 Also I tried to put different quotation marks but with no luck. 我也尝试使用不同的引号,但没有运气。 Is it possible at all to put this breakpoint? 是否可以设置这个断点?

I encountered a similar problem a long time ago ( Debugging data in 'anynomous namespaces' (C++) ). 很久以前我遇到过类似的问题( 在'anynomous namespaces'(C ++)中调试数据 )。 I wanted to look at the value of a data member in an unnamed namespace, but I couldn't get this done. 我想查看未命名的命名空间中的数据成员的值,但我无法完成此操作。

Finally, somebody pointed me to http://msdn.microsoft.com/en-us/library/0888kc6a%28VS.80%29.aspx . 最后,有人向我指出了http://msdn.microsoft.com/en-us/library/0888kc6a%28VS.80%29.aspx Maybe you can get the decorated function name and put a breakpoint on that. 也许你可以获得装饰的函数名称并在其上设置断点。

It looks like Visual Studio can't set breakpoint by function name inside anonymous namespace. 看起来Visual Studio无法通过匿名命名空间内的函数名设置断点。 Even WinDbg can't do this. 即使是WinDbg也无法做到这一点。

If you have sources you can set breakpoint by line. 如果您有源,可以逐行设置断点。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 在Visual Studio中的DLL中的函数处设置断点? - Set breakpoint at function inside dll in Visual Studio? 如何在 gdb 中为匿名命名空间设置断点? - How to set a breakpoint in gdb for an anonymous namespace? 如何在Visual Studio中的DLL上设置断点? - How to set a breakpoint on a DLL in Visual Studio? 匿名命名空间内的自由函数 - free function inside anonymous namespace 找不到在未命名的命名空间内声明的函数的函数定义 - 如何解决? (Visual Studio 2015) - Function definition not found for a function declared inside unnamed namespace - how to resolve? (Visual Studio 2015) 在Visual Studio中生成的匿名名称空间变量的改写名称的数字部分意味着什么? - What does number part of mangled name for anonymous namespace variable generated in Visual Studio means? Visual Studio 无法在断点中设置条件表达式 - Visual Studio unable to set conditional expression in breakpoint 名称必须是名称空间名称Visual Studio错误 - name must be a namespace name Visual Studio Error 在Visual Studio中有一种方法可以在通过GetModuleHandle + GetProcAddress调用的某个函数中设置断点吗? - In Visual Studio is there a way to set a breakpoint in some function called via GetModuleHandle + GetProcAddress? 在 Visual Studio 中检查内存转储时匿名命名空间中的符号 - Symbol in anonymous namespace when inspecting memory dump in Visual Studio
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM