如何从 Visual Studio 2015 生成的 XML 创建可读的 C++/CX 文档

how do I create readable C++/CX document from XML generated by Visual Studio 2015

我的项目是在 VS2015 上用 C++/CX 编写的,我正在寻找一种生成 API 文档的方法。

经过google和Whosebug,我尝试了doxygen、VSDocman、NDoc、Atomineer Pro Documentation和SandCastle,发现这些工具不支持C++/CX语法,因此无法生成正确的文档。

我还尝试生成 VS 支持的 XML 文件。但是很难阅读 XML 文件。

如何从 C++/CX 生成 API 文档?感谢任何建议

关于 C++/CX 语言扩展存在 很多 的误解。您尝试了太多没有希望让您到达任何地方的产品。首先也是最重要的是,它是本机 C++ 扩展,不会生成 .NET 兼容程序集。因此,淘汰任何尝试使用反射来解析元数据的人。淘汰 NDoc、VSDocman、Sandcastle。 Atomineer 出来了,它只是一个编辑器插件。

所以你只剩下吸氧剂了。

当然,它不知道开箱即用的 C++/CX。 FAQ指出,为了兼容一种语言,需要修改src/scanner.l

看了一下,已经支持C++/CLI扩展了。这是另一个支持生成 MSIL 的 C++ 语言扩展。 C++/CX 语法非常接近于 C++/CLI。只是一些细微的差别,比如 gcnew 关键字太具有误导性而被 ref new 取代。但这不是 doxygen 关心的那种语法,它只想了解声明。这些关键字是相同的。

所以我能猜到的唯一障碍是你只是忘了告诉它有关语言的信息。它不能仅从文件扩展名正确猜测它,.cpp 和 .h 将使它解析纯 C++。在配置文件中修改或添加这一行:

   CPP_CLI_SUPPORT        = YES

并根据需要调整 scanner.l。