尝试将 QString 与空字符串进行比较时出现错误。
QString S = "abc";
if (S != "") // Sigill on this line
{
qDebug("ok");
}
最佳答案
根据 signal
手册页(第 7 节),SIGILL
指示非法指令,如果尝试执行无效或错误的指令,则会引发-formed 或如果指令需要比您运行时更高的权限级别。
因为两个字符串的比较不应该需要需要特殊权限的操作,所以您的 QT 版本可能是为您的处理器不支持的指令集编译的(例如支持 SSE 4.2,而您的处理器不支持)上海证券交易所 4.2)。要检查该条件,您可以在检查编译器使用的所有指令集都受您的处理器支持后重新编译 QT 库。
关于qt - 我在 Qt : SIGILL ERROR 中收到错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21237735/