繁体   English   中英

C++/CLI 中无法识别命名空间

[英]Namespace not recognized in C++/CLI

我最近问了这个问题: create a namespace in c++/cli? 所以我试图在 c++/cli 中创建我自己的命名空间。

但是当我在两个单独的文件 (.cpp) 中使用相同的命名空间时,命名空间显然不会被识别为相同,因为当我尝试在另一个文件中引用另一个 class 时出现错误。

这基本上是我所拥有的:

宠物.cpp:

namespace Animals
   {
   public ref class Pets 
     {
     public:
        List<Dog> ^vDogs;

     Pets::Pets()
        {
        vDogs = gcnew List<Dog^>();
        }

     void Pets::DoSomething()
        {
        }
     };
   }

狗.cpp:

namespace Animals
   {
   public ref class Dog 
     {

     Dog::Dog()
        {
        }

     void Dog::DoSomething()
        {
        }
     };
   }

其他信息:

1)文件在同一个文件夹中

2) 文件被添加到不同文件夹中的现有解决方案中

3) 我也尝试在任一文件中using namespace Animals ,但我收到一条错误消息,指出命名空间不存在。

4)我正在使用 Visual Studio 2010(仅供参考,以防有人有办法修复,但我需要在 VS 中做一些特定的事情)

所以我的问题是:我需要做什么才能识别命名空间?

请让我知道需要什么其他信息才能解决问题。

提前感谢您的时间和耐心::)

C++/CLI 编译器被传统 C 和 C++ 编译器的构建 model 卡住了。 当一千字节的 memory 占用与鞋盒一样多的空间时制定。 它是一次处理一个.cpp 文件的单遍编译器。 使用 linker 将钻头粘合在一起。

这意味着您必须使用传统的 header 文件来声明您的类,并在源代码文件顶部使用 #include 指令来包含它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM