作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
基本上就是这样。我没有设法从 GDB 中的对象调用一些继承的函数/成员。
例如,我的代码中有这一行:
41 std::cout << foo->size() << std::endl;
在控制台中打印“foo”的大小。但是当我用 GDB 停下来并尝试打印它时,我得到了这个:
(gdb) print foo->size()
Couldn't find method foo::size
编辑
foo 声明是:
class foo : public sc_core::sc_module { ... };
sc_module
是一个SystemC接口(interface),方法size()就在这里。 sc_core
是命名空间
。所以当我尝试得到这个时:
(gdb) print (sc_module*)pipe.name()
No symbol "sc_module" in current context.
(gdb) print (sc_core::sc_object*)pipe.name()
A syntax error in expression, near `)pipe.name()'.
有没有办法可以从那个点调用那个方法?
非常感谢:)
最佳答案
如果该方法已被优化,您可以看到此行为。也可能有其他原因。
后面示例中的语法错误表明您的 gdb 可能是旧的。我们在最近的版本中修复了此类错误。
关于c++ - GDB:如何从子对象打印/调用父函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21095156/
我是一名优秀的程序员,十分优秀!