在include guard结束之前,在.h文件中添加#include .cpp

时间:2014-10-26 05:38:30

标签: c++ header-files

我最近收到了一个定义.h文件的作业。在底部的.h文件中,它包含.cpp文件。例如

#ifndef CLASS_H
#define CLASS_H

class MyClass
{
  //variablles and methods
};

#include MyClass.cpp

#endif 

现在,当我尝试编写.cpp文件的定义时,问题出现了。例如,当我尝试定义构造函数时,会给我一个错误

 error: ‘MyClass’ does not name a type

当我尝试定义运算符重载函数时,我也会遇到错误

我知道这些错误仅适用于上述情况,因为当我在.cpp文件中#include我的.h文件时,它完全编译

我不允许更改此作业中的任何.h文件

1 个答案:

答案 0 :(得分:1)

不要在头文件中执行此操作:     #include MyClass.cpp 单独编译MyClass.cpp并在Myclass.cpp中编译:

#include MyClass.hpp

#include MyClass.h

无论你拥有什么。