【问题标题】:Browsing 'Decorated Names' in Visual Studio在 Visual Studio 中浏览“装饰名称”
【发布时间】:2010-10-22 23:40:52
【问题描述】:

我正在从事一个(相当可怕的)项目,该项目涉及通过 dll 接口导入 C++ 类层次结构。一个更可怕的细节要求我知道暴露的各种类元素的“装饰”名称——主要是成员函数和静态数据。

许多方法可以实现这一点 - 程序集列表或映射文件、dumpbin、依赖项遍历器、_FUNCDNAME_ 宏等。不幸的是,它们都是要求我实际编译代码或拥有已编译的 dll - 我可用的只是头文件。 (这可能会让你摸不着头脑——相信我的话,这确实是一个可怕的项目。)

现在,我可以轻松地从头文件中编译一些可编译的内容,并使用上述方法之一。但如果我能避免它,那就更好了。所以我的问题是:有没有办法从 Visual Studio(一个对象浏览器)中浏览装饰符号名称?我知道装饰在技术上是在编译时完成的,但是 Intellisense 在您键入时会做很多其他事情,我希望它也可以这样做。

【问题讨论】:

  • 不,你必须编译。

标签: visual-studio intellisense name-decoration


【解决方案1】:

如果所有其他方法都失败,请将该 .h 重命名为 .cpp,将所有分号 (;) 替换为

{
#pragma message(__FUNCDNAME__)
}

稍微编辑一下,然后编译它。你会得到你的清单。

【讨论】:

  • 谢谢。它对静态成员没有帮助,但它比为成员方法输出到文件更有效。
猜你喜欢
  • 1970-01-01
  • 2012-02-28
  • 2016-10-24
  • 1970-01-01
  • 2018-10-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-07-22
相关资源
最近更新 更多