如何显示命名空间中的所有元素
How to show all the elements in a namespace?
我可以怎么做才能在C++中显示命名空间内的所有元素?
是否可以分离命名空间并使用 Doxygen 将它们全部打印出来?使用海湾合作委员会?
我假设我不知道命名空间名称,所以我想将它们全部打印出来,或者我知道一个特定的命名空间名称,我想知道里面有什么。
C++没有
反射(例如许多动态语言或Java和.NET),因此不可能从C++内部进行反射。
Doxygen可以将其数据导出为XML而不是HTML,因此您可以使用XSLT样式表将Doxygen的XML输出转换为所需的任何格式。
有一个名为GCC-XML的GCC版本,它不是编译输出解析C++代码的XML表示,在这里你可以做同样的事情。
最后但并非最不重要的一点是,您当然可以为 Clang 的 GCC 创建一个插件并在那里完成(例如,GCC 可以使用使用 Mozilla 的 Dehydra 补丁用 Javascript 编写的插件)。
我建议查看Doxygen XML输出。
如果你在 Linux 上,你可以使用nm
工具列出生成的二进制文件中的所有符号,并根据需要解析输出:
nm -C some-app
相关文章:
- 命名空间中具有.h和.cpp文件的类
- 从父命名空间重载类型
- 在命名空间中定义函数还是限定函数
- C++:对不存在的命名空间使用命名空间指令
- 通过继承类使用来自不同命名空间的运算符
- 使用命名空间时出现多个定义错误
- CUDA内核和数学函数的显式命名空间
- 嵌套的匿名命名空间
- CMakeLists.txt中的命名空间表示法
- 类是C++中的命名空间吗
- 在命名空间中使用全局命名空间中的函数
- 如何使 std::sort 在 std::swap 和我的命名空间的模板化交换之间没有名称冲突?
- '使用命名空间{嵌套在另一个命名空间中的某个命名空间}"
- 是否可以将函数导入命名空间,但不能导出它?
- C++ C++类中的命名空间降级
- 如何使用 soong 命名空间来有条件地编译模块
- 使用 Clang++ 有没有办法将文件作为命名空间等包含?
- c/c 带有libxml将命名空间添加到子元素而不是根元素
- 如何显示命名空间中的所有元素
- C++命名空间元素