我有一个类是 absfilehandler,它有一个像这样的 QFILE 指针..
QString absfilename;
QFile * absfilepointer;
我有一个打开方法。
bool AbsFileHandler::OpenAbsFile()
{
QFile readfile(absfilename);
absfilepointer = (&readfile);
if (!(*absfilepointer).exists())
{
qDebug() << "The file" << (*absfilepointer).fileName() << "does not exist.";
return false;
}
else if (!(*absfilepointer).open((QIODevice::ReadOnly) | (QIODevice::Text)))
{
qDebug() << "Could not open" << (*absfilepointer).fileName() << "for reading.";
return false;
}
else
{
qDebug() << "File ready to read";
return true;
}
}
我用同一个类的对象调用另一个类中的方法,例如 myAbsFileHandler.OpenAbsFile()
如果它返回true,那么我们执行这个
QTextStream readabsstream((myAbsFileHandler.absfilepointer));
但是这个语句给出了严重的异常并且退出了执行。知道为什么会这样吗?谢谢。