C++ cli 从子命名空间访问内部方法

C++ cli 从子命名空间访问内部方法,c++-cli,C++ Cli,在C++/Cli中,是否可以从子命名空间访问内部方法而不进行反射 例如: //TestClass.h namespace Test { public ref class TestClass { internal: void InternalMethod(); }; } //ChildClass.h namespace Test { namespace Child { public ref class TestClass {

在C++/Cli中,是否可以从子命名空间访问内部方法而不进行反射

例如:

//TestClass.h
namespace Test {
    public ref class TestClass {
    internal:
        void InternalMethod();
    };
}

//ChildClass.h
namespace Test {
    namespace Child {
        public ref class TestClass {
        public:
            void AccessInternalMethod()
            {
                TestClass c;
                c.InternalMethod();
            }
        };
    }
}

看来这应该是可能的。很抱歉,如果以前有人问过这个问题。

在C++/CLI
内部
(以及C#
内部
和CLI等效程序集)中与名称空间无关。当您在成员上使用该修饰符时,这意味着可以从声明该修饰符的组件内部访问该修饰符


这意味着,如果
Test.Child.TestClass
Test.TestClass
位于同一程序集中,则它可以访问
InternalMethod()
。如果它在另一个程序集中,则无法访问它。名称空间与此无关。

我有点过早,另一个编译器错误导致找不到InternalMethod。我=愚蠢。谢谢Svick=乐于帮助+希望凯尔也喜欢SWTOR。