讀過這個線程計算器:Strange class declaration ,但仍與下面的代碼混淆在foo.h
:一個奇怪的C++類的聲明
class Foo CHECKLEAKDCL {
我相信,富應該是類名,因爲有構造函數和解構者可以暗示這一點。
我在這個.h文件中看不到與CHECKLEAKDCL相關的任何宏定義。
也是我感到困惑的答案爲Strange class declaration,其中說:
Q_CORE_EXPORT不是標識符。它是一個與平臺相關的宏,它用於指示一個旨在跨越 庫邊界使用的類。
任何人都可以對此有更多的解釋嗎?
UPDATE:發現這條線在.h文件中,它包括在foo.h
:
#define CHECKLEAKDCL : private CheckLeak
所以類信息聲明應該是:
class Foo : private CheckLeak {
所以Foo
是extend ing CheckLeak
,對嗎?
搜索'CHECKLEAKDCL'的整個項目,必須將其定義爲某處的預處理器宏。 –
看看這個:http://stackoverflow.com/questions/7840874/what-does-it-mean-when-a-class-declaration-appears-to-have-two-names我希望它可以幫助你= D – Nestoraj
無論是那個還是'Foo'都被定義爲一個擴展爲空的預處理器宏,或者更糟糕的是擴展爲'{}; class'。 –