我想弄清楚为什么我收到以下错误:
错误:重新定义'TimeDuration'
// TimeDuration.cpp
#define HOUR 3600
#define MIN 60
#include <iostream>
#include <string>
#include "TimeDuration.h"
using namespace std;
TimeDuration::TimeDuration() {
seconds = 0;
}
void TimeDuration::setDuration(const int sec) {
seconds = sec;
}
void TimeDuration::display() {
// Some code to display the time
}
错误显示在我的头文件中。
// TimeDuration.h
class TimeDuration {
private:
int seconds;
public:
TimeDuration();
void setDuration(const int sec);
void display();
};
答案 0 :(得分:3)
错误可能是因为您在TimeDuration.h中没有标题保护
标题保护的标准方法是在文件开头写:
#ifndef TIME_DURATION_H
#define TIME_DURATION_H
并在文件的末尾:
#endif