C++ cli 未知符号的Xml注释cref

C++ cli 未知符号的Xml注释cref,c++-cli,xml-documentation,C++ Cli,Xml Documentation,试图浏览我的项目并扩展文档,出现以下情况: //TestClass.h namespace Test { public enum class TypeOne { /// <summary> /// Description <see cref="Test::TypeTwo">TypeTwo</see> /// </summary> AAA }; public e

试图浏览我的项目并扩展文档,出现以下情况:

//TestClass.h
namespace Test {
    public enum class TypeOne {

        /// <summary>
        /// Description <see cref="Test::TypeTwo">TypeTwo</see>
        /// </summary>
        AAA
    };
    public enum class TypeTwo {
        BBB
    };
}
//TestClass.h
名称空间测试{
公共枚举类TypeOne{
/// 
///描述类型二
/// 
AAA
};
公共枚举类TypeTwo{
BBB
};
}
cref产生以下错误:

警告C4638:应用于“Test.TypeOne.AAA”的XML文档注释:对未知符号“Test::TypeTwo”的引用

有没有办法让xml文档识别TypeTwo?我会把Type2放在Type1上面,但是Type2也是Type1的信条,所以我会回到同样的情况


我是不是太蠢了?

您可能需要像处理C++中的循环引用一样处理这种情况:在TypeOne之前向前声明TypeTwo(但不要定义它)。

我认为XML文档可能会使用C#的范围表示法(错误消息当然会),而不管源文件语言是什么,因此,也许可以尝试
Test.TypeTwo

不幸的是,您不能在c++/cli中转发声明枚举。作为参考,错误是c++11,语法是允许的,在语法中称为不透明枚举声明。酷。我的理解是,这只能在VisualStudio 11中正确使用,@ CyLayHayWord: C++ 11中的大部分将包含在VC++ 2011中,但是不知道这个特定的规则是否是.C++/CLI XML注释使用C++范围标记。不过谢谢:)