[问题] 静态函数呼叫非静态函数

楼主: yshihyu (yshihyu)   2018-09-26 22:38:34
开发平台(Platform): (Ex: Win10, Linux, ...)
Linux
编译器(Ex: GCC, clang, VC++...)+目标环境(跟开发平台不同的话需列出)
g++ 7.3.0
记得以前这样能编译过 , 是因为新版编译器问题嘛?
想在建构函数把this指标 assign 到 static 变量存放instance
https://gist.github.com/shihyu/9ef5b9a30e5221350fc1cbde00205627
可是现在无法编译过, 想请问一下这是什么原因?
谢谢
作者: thefattiger (LT)   2018-09-26 23:23:00
A跟main之间加一行A* A::m_gA = nullptr;宣告之后还要定义才不会link error
楼主: yshihyu (yshihyu)   2018-09-26 23:41:00
可以了感谢~ 在请教一下m_staticA 为什么不需要定义也能正常编译过? 但是static A* m_gA; 必须要定义?
作者: thefattiger (LT)   2018-09-26 23:47:00
因为你没用到,有用到的话也是会link error
楼主: yshihyu (yshihyu)   2018-09-27 00:05:00
了解 感谢
作者: tinlans ( )   2018-09-28 13:34:00
要练习看错误讯息跟了解错误讯息

Links booklink

Contact Us: admin [ a t ] ucptt.com