Ошибка отладочного подтверждения: _CrtIsValidHeapPointer (pUserData)

Sometimes Я получаю это «Отладочное утверждение не выполнено» ошибка при запуске моего проекта Qt в режиме отладки (образ). I don't know where I wrong because the compiler says nothing and I don't know what to do to find my error.

Я программирую под Windows Vista, используя Qt Creator 2.4.1, Qt 4.8.1.

Моя программа должна прочитать некоторые данные с лазерного устройства и сохранить их в файл с кодом, подобным следующему:

void runFunction()
{
    configure_Scanning(...);

    while(...)
    {
        // do something
        scanFunction();
        // do something
    }
}

и это мой "инкриминированный" функция (где я думаю, что проблема)

void scanFunction()
{
    file.open();

    data = getDataFromDevice();

    if(flag)
    {
        if(QString::compare(lineB,"")!=0)
        {
            QTextStream out(&file);
            out << lineB << endl;
            lineB = "";
        }
        lineA.append(data+"\t");
    }
    else
    {
        if(QString::compare(lineA,"")!=0)
        {
            QTextStream out(&file);
            out << lineA << endl;
            lineA = "";
        }
        lineB.prepend(data+"\t");
    }

    file.close();
}

кудаlineA а такжеlineB изначально два недействительных QString: идея состоит в том, что я делаю двунаправленное сканирование для сохранения информации в 2D матрице (от -X до + X и наоборот, пока Y переходит к указанной цели).lineA запоминает чтение от (-) до (+);lineB запоминает чтение от (+) до (-). Когда направление сканирования меняется, я пишуlineA (или жеlineB) в файл, и я продолжаю сканирование.

Вы понимаете, что я сказал? Не могли бы вы предложить мне решение?

Спасибо и извините за мой английский: P

Ответы на вопрос(1)

Ваш ответ на вопрос