[英]redefinition of class c++ header files
主要类:
#include "otherClass.h"
using namespace std;
int main() {
a cl;
return 0;
}
头文件:
#ifndef OTHERCLASS_H_INCLUDED_
#define OTHERCLASS_H_INCLUDED_
class a {
int add(int a, int b);
int subtract(int a, int b);
};
#endif
头文件对应的.cpp类
#include "otherClass.h"
class a {
int add(int a, int b) {
return (a + b);
}
int subtract(int a, int b) {
return (a - b);
}
};
错误:
Text.cpp:13: 错误: 'cl' 未在此范围内声明 otherClass.cpp:3: 错误: 'class a' 的重新定义 otherClass.h:3: 错误: 'class a' 的先前定义
我有两个问题:首先,在我在头文件中添加一个类之前,该文件工作正常(只是保存函数)。 添加类后,出现上述两个错误。 有人可以告诉我如何安排我的头文件来修复这些错误吗? 即我想知道如何能够为包含类的文件制作头文件。
其次,我如何获得它以便在 main 函数的范围内声明该类?
这是在.cpp
文件中定义类成员函数的方式:
#include "otherClass.h"
int a::add(int a, int b) {
return (a + b);
}
int a::subtract(int a, int b) {
return (a - b);
}
请注意,您已将成员声明为private
,因此您将无法对它们做太多事情。
消除
class a {
和最后
};
来自 .cpp 文件
(并添加一个 :: 到方法,按照以前的答案)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.