赞
踩
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QTranslator translator;
translator.load("trans_zh_CN.qm");
app.installTranslator(&translator);
return app.exec();
}
比如上面这段代码,QTranslator translator,可以能是事件循环的第一次循环结束后,已经被释放,这中间是有一段时间的,可能是几十毫秒,几百毫秒,这个时间加载量很小的翻译文件时没问题的,但是项目稍大就不行了,所以此处将QTranslator translator;定义为类的成员变量,或者new出来就可以解决这个问题。
上述关于事件循环的知识点,以及是否在事件循环第一次执行完以后变量就被释放掉全部是我猜测的,正确与否请自行辨别。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。