首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > QT开发 >

Qt静态变量的有关问题

2012-09-01 
Qt静态变量的问题为什么在头文件中声明的静态变量,在成员函数中不能使用如下代码class Button : public QG

Qt静态变量的问题
为什么在头文件中声明的静态变量,在成员函数中不能使用
如下代码
class Button : public QGraphicsWidget
{
  public:
  void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *);

  private:
  QStringList word_list;
  static int count;
};


void Button::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *)
{
  count++;
}
错误信息是:undefinited reference to ‘Button::gft’

若是把 static int gft; 移到函数中定义就没问题,但是我需要在其他类函数中改变gft,所以在函数中定义的方法行不通。
求为什么以上代码不能实现。
注:我看到清华大学出版社C++那本书98页的程序,静态成员变量就是在头文件中定义的,而且成员函数还能调用

[解决办法]
暑假没码代码,犯糊涂了。
应该是加上:
int Button::count =0;
[解决办法]
count 初始化了吗?
[解决办法]
静态变量需要初始化

热点排行