2012-05-25 55 views
0

我在我的程序中使用諸如gClient->GetRoot()gApplication->*之類的東西時遇到了一些問題。如果我使用根控制檯(CINT),沒關係。但如果我想編譯它,我會得到:ROOT(cern):gClient,gApplication

'gClient' was not declared in this scope 

任何人都知道一個問題嗎?

回答

2

gApplication在TApplication.h中定義,它位於$ ROOTSYS/include/TApplication.h中。如果你將這個頭文件包含到你的源代碼中,它應該「正常工作」。類似地,對於其他變量,如gROOT,gClient等 - 它們位於頭文件TROOT.h,TClient.h等中。

在我的本地版本(ROOT v5.32從12/2011)中的代碼片段在TApplication.h頭文件是

// definition of TApplication above 
    ClassDef(TApplication,0) //GUI application singleton 
}; 

R__EXTERN TApplication *gApplication; 

和其他的看起來相似。

0

您必須#include正確的包含文件,並根據您的設置,鏈接一些庫。

如果您在根幫助頁面中搜索根對象,右上角的小框會告訴您需要什麼。