我只想访问模板类的静态成员。我知道这里有很多关于如何初始化它的帖子,但我的问题是打印它的价值。
#include<iostream>
using namespace std;
template<typename T>
class X
{
static int i;
};
//There are answers everywhere on this site to initialize it
template<typename T>
int X<T>::i = 5;
//But Please help me to access it
int main()
{
X<int> x;
//Problem below I just want to access it
cout << endl << X<int>::i << endl;
return 0;
}
答案 0 :(得分:4)
编译器错误消息包含答案的另一种情况。例如。 gcc说
main.cpp:13:5:错误:'int X :: i'是私有的
当然,您无法访问课堂外的private
字段。改为public
。