我在我的程序中使用諸如gClient->GetRoot()
或gApplication->*
之類的東西時遇到了一些問題。如果我使用根控制檯(CINT),沒關係。但如果我想編譯它,我會得到:ROOT(cern):gClient,gApplication
'gClient' was not declared in this scope
任何人都知道一個問題嗎?
我在我的程序中使用諸如gClient->GetRoot()
或gApplication->*
之類的東西時遇到了一些問題。如果我使用根控制檯(CINT),沒關係。但如果我想編譯它,我會得到:ROOT(cern):gClient,gApplication
'gClient' was not declared in this scope
任何人都知道一個問題嗎?
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;
和其他的看起來相似。
您必須#include正確的包含文件,並根據您的設置,鏈接一些庫。
如果您在根幫助頁面中搜索根對象,右上角的小框會告訴您需要什麼。