我想使用 tm 结构作为类中的静态变量。花了一整天的时间阅读和尝试,但它仍然无法工作:(如果有人能指出我做错了什么,我将不胜感激
在我的课堂上,在公共下,我将其声明为:
static struct tm *dataTime;
在main.cpp中,我尝试暂时使用系统时间来定义和初始化它以进行测试(实际时间在运行时输入)
time_t rawTime;
time ( &rawTime );
tm Indice::dataTime = localtime(&rawTime);
但似乎我不能在函数之外使用 time() 。
main.cpp:28: 错误:预期
构造函数、析构函数或类型
‘(’ 标记之前的转换
如何初始化类的 static tm 中的值?
您可以将上面的内容包装在一个函数中:
tm initTm() {
time_t rawTime;
::time(&rawTime);
return *::localtime(&rawTime);
}
tm Indice::dataTime = initTm();
为了避免可能的链接问题,请将函数设为静态或将其放入未命名的命名空间中。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)