軟件
- 編輯器:CLion
問題描述
今天學習C++按照老師課程所講內容操作,在我本地拋出如下提示:
In file included from f:\code\c++\header\line.h:1:0,
from F:\Code\c++\main.cpp:5:
f:\code\c++\header\Coordinate.h:3:7: error: redefinition of 'class Coordinate'
class Coordinate {
^~~~~~~~~~
原因
在該類定義的頭文件(.h)中沒有使用 #ifndef,#define 和 #endif 來進行保護,也就是缺少了防止類被多次包含的宏
- 我使用IDE編輯器(CLion),新建頭文件,會在頭文件中加入如下代碼:
#ifndef C_TEST_H
#define C_TEST_H
#endif //C_TEST_H
- 我看到老師編輯器中沒有內容,以爲不重要就刪除了,結果然我意想不到…
解決辦法
將你頭文件中的代碼放到如下位置:
#ifndef C_TEST_H
#define C_TEST_H
# 這裏放你寫的代碼
#endif //C_TEST_H
注意:如果你的頭文件名稱爲Test.h , #ifndef 、#define
後面的代碼爲 C_TEST_H