当前位置: 代码迷 >> QT开发 >> Qt静态变量的有关问题
  详细解决方案

Qt静态变量的有关问题

热度:77   发布时间:2016-04-25 04:34:46.0
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 初始化了吗?
------解决方案--------------------
静态变量需要初始化
  相关解决方案