Russian Qt Forum

Qt => Общие вопросы => Тема начата: Caduceus от Сентябрь 08, 2009, 15:22



Название: Что за дурацкая ошибка - падает на чтении из файла в цикле
Отправлено: Caduceus от Сентябрь 08, 2009, 15:22
Вот как читаю из файла:
Код:
QFile file(s);
file.open(QIODevice::ReadOnly);
QDataStream in(&file);    // read the data serialized from the file
qint32 objectCount;
in >> objectCount;
for (qint32 i = 0; i < objectCount; ++i)
{
qint32 pntX;
qint32 pntY;
in >> pntX;
in >> pntY;
}

Так вот. На перовом же in >> внутри цикла он падает в глубинах qglobal на QFlags  inline QFlags operator&
А если перед циколм поставить еще раз in >> objectCount; то нормально читает нужное число и не падает.

Что за....


Название: Re: Что за дурацкая ошибка - падает на чтении из файла в цикле
Отправлено: spectre71 от Сентябрь 08, 2009, 15:39
1) Интересно, а где проверка на то, что файл вообще открылся? :)
2) Телепаты в отпуске, а мы не врубаемся, что за файл ты пытаешься прочитать.
Нужен компилябильный пример(с "pro" файлом) и файл с данными


Название: Re: Что за дурацкая ошибка - падает на чтении из файла в цикле
Отправлено: Caduceus от Сентябрь 08, 2009, 15:46
Да открылся он - превое число нормальн опрочиталось и второе читается нормально , если не в цикле читать..


Название: Re: Что за дурацкая ошибка - падает на чтении из файла в цикле
Отправлено: spectre71 от Сентябрь 08, 2009, 16:03
Да открылся он - превое число нормальн опрочиталось и второе читается нормально , если не в цикле читать..
А третье число?, у тебя в цикле читается сразу 2 + 1 до цикла.
Я уже писал, выкладывай тест.