【发布时间】:2012-05-31 23:32:51
【问题描述】:
我在我的程序中使用 gClient->GetRoot() 或 gApplication->* 之类的东西时遇到了一些问题。如果我使用根控制台(CINT),没关系。但如果我想编译它,我会得到:
'gClient' was not declared in this scope
有人知道问题吗?
【问题讨论】:
标签: c++ root-framework
我在我的程序中使用 gClient->GetRoot() 或 gApplication->* 之类的东西时遇到了一些问题。如果我使用根控制台(CINT),没关系。但如果我想编译它,我会得到:
'gClient' was not declared in this scope
有人知道问题吗?
【问题讨论】:
标签: c++ root-framework
gApplication 定义在 TApplication.h 中,它位于 $ROOTSYS/include/TApplication.h 中。如果您将此头文件包含在您的源代码中,它应该“正常工作”。对于其他变量,如gROOT、gClient 等也是类似的——它们位于头文件 TROOT.h、TClient.h 等中。
在我的本地版本(从 12/2011 开始的 ROOT v5.32)TApplication.h 头文件中的代码 sn-p 是
// definition of TApplication above
ClassDef(TApplication,0) //GUI application singleton
};
R__EXTERN TApplication *gApplication;
和其他的看起来相似。
【讨论】:
您必须#include 正确的包含文件,并根据您的设置链接一些库。
如果您在根帮助页面中搜索根对象,右上角的小框会告诉您需要什么。
【讨论】: