2010-02-12 26 views
1

所以我在學習C++方面很努力,我開始使用Eclipse。當我創建我的.h文件,我在上面得到這個奇怪的#define常量:Eclipse中的新.h文件產生一個#define常量

的#ifndef CLASSNAME_H_
的#define CLASSNAME_H_
#ENDIF/* * CLASSNAME_H_/

那麼,是什麼原因呢?我應該使用CLASSNAME_H_做些什麼?

(我要指出,「類名」只是一種填充物。因此,例如,我最新的課是Person.h,我現在有PERSON_H_)

+0

啊,這樣更有意義。請參閱cmw的維基百科鏈接。 – 2010-02-12 03:03:28

回答

5

這是用來防止重標準結構包含你的頭文件,我想你很可能會將CLASSNAME_H_重命名爲更獨特的東西。

還是你的頭文件也叫做classname.h?

編輯:好,所以我現在看到,類名不是實際值,而是一個例子。

在這種情況下,你不應該爲此擔心,只是忽略它們,他們會完成工作。

+4

他們被稱爲「包括衛兵」http://en.wikipedia.org/wiki/Include_guard 其他編譯器可能有類似'#pragma once'做同樣的事情 – cmw 2010-02-12 03:02:03

+0

對不起,我更新了我的文章。 classname prolly不是填充物的最佳選擇:)。 – Stephano 2010-02-12 03:02:52

+0

@cmw做得很好。我無法在維基百科找到這個保存我的生活。謝謝! – Stephano 2010-02-12 03:04:14

1

它只是爲了確保在編譯過程中多次包含該文件時,內容不會被多次定義。你不使用CLASSNAME_H做任何事情,它只是擋住那個文件的內容。

相關問題