我在标头中有以下内容(经过一些预处理以允许标头在 C++ 和 C++/CLI 中编译):
namespace Fci
{
public enum class Key
{
...
Alt,
...
};
...
/// <summary>
/// ...
/// </summary>
/// <remarks>
/// <para>
/// ... For instance, if <see cref="Fci::Key::Alt"/> is queried ...
/// </para>
/// </remarks>
[System::Flags] public enum class KeyStates
{
...
该项目可以很好地构建代码,但包含此标头的所有 C++/CLI 源代码都得到以下信息:
警告 C4638:应用于“Fci.KeyStates”的 XML 文档注释:引用未知符号“Fci::Key::Alt”。
我试过 appending F:
,我试过 absolute ::Fci::Key::Alt
,我试过用点代替 C++ 范围分隔符,还有其他一些东西。似乎没有任何效果。
我意识到在 C++/CLI 中前向引用 XML 可能会有很大的问题,但这甚至不是前向引用。
甚至可以在 XML 文档注释中引用枚举常量,尤其是在 C++/CLI 中?ECMA-372 并没有真正提到这一点。
如果有可能,我做错了什么?