Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何在vc+中的另一个项目的另一个文件中包含名称空间+;?_C++_Visual Studio_Visual C++ - Fatal编程技术网

C++ 如何在vc+中的另一个项目的另一个文件中包含名称空间+;?

C++ 如何在vc+中的另一个项目的另一个文件中包含名称空间+;?,c++,visual-studio,visual-c++,C++,Visual Studio,Visual C++,我在VisualStudio中有一个C++项目。 在源文件中,我在其中创建了一个名称空间和一个类。 现在,我在同一个解决方案中添加了另一个项目。 在新项目中,我尝试使用以前声明的名称空间。 它不允许我这样做。 它抛出一个编译器错误,提示“名称必须是命名空间名称”。 如何使用它 在源文件中,我在那里创建了一个名称空间和一个类 里面 您应该在头文件(.h或.hpp)而不是源文件(.cpp)中执行此操作。然后,在另一个项目中,可以使用以下命令包含该头文件: #include "path_of_the_

我在VisualStudio中有一个C++项目。 在源文件中,我在其中创建了一个名称空间和一个类。 现在,我在同一个解决方案中添加了另一个项目。 在新项目中,我尝试使用以前声明的名称空间。 它不允许我这样做。 它抛出一个编译器错误,提示“名称必须是命名空间名称”。 如何使用它

在源文件中,我在那里创建了一个名称空间和一个类 里面

您应该在头文件(
.h
.hpp
)而不是源文件(
.cpp
)中执行此操作。然后,在另一个项目中,可以使用以下命令包含该头文件:

#include "path_of_the_header/xxx.h" // e.g #include "../../include/proj1/xx.h"
这样,另一个项目将能够看到名称空间及其内部的类。

在头文件中:

#ifndef _XXX_H_
#define _XXX_H_

您通常会在将要使用方法的位置包含标题

标题的来源是什么意思。你能给我举个例子吗?“标题的来源”我没这么说?什么不清楚?#包括“标题的来源/xxx.h”标题的来源是什么?哦,对不起!headerInside MyHeader.h的路径我已经编写了名称空间My{}现在在另一个项目中我正在尝试这样做#包括“MyHeader.h”这是不允许的,包括保护应该完全进入头文件。是的,这就是我写的,不是吗?:)@PedroG.Dias不,您建议在包含头文件之前,先将
#ifndef(如果没有)放入头文件中,此语句应该放在头文件中。首先,您的问题没有解决(描述不好的)问题。其次,您定义了保留的宏,而不应该这样做。第三,整个
#ifdef
#define
#endif
三个部分都应该放在头文件中。抱歉,编辑了答案:)谢谢您的更正