Программа C ++ Builder не запускается (но если я удаляю строку file.close (), она запускается!)

Я создаю свое первое игровое приложение с этой зимы, и теперь я сталкиваюсь с одной очень странной проблемой.

Используя Embarcadero C ++ Builder XE, мое приложение всегда нормально компилировалось и работало, но сегодня оно не запускается, но все равно успешно компилируется!
Я просто нажимаю «Выполнить», как обычно, вижу вывод на консоль «Успешное истекшее время и т. Д.», А затем — ничего. Окно моего приложения просто не появляется.

Я понял, что проблема в этом коде:

ifstream file;
file.open(fileWithTextureProp, ios::binary);

int length;
char * buffer;
// get length of file:
file.seekg (0, ios::end);
length = file.tellg();
file.seekg (0, ios::beg);

// allocate memory:
buffer = new char [length+1];
buffer[length] = '\0';

// read data as a block:
file.read (buffer,length);

xml_document<> doc;
doc.parse<0>(buffer);

/*
some xml parsing here, if I delete or comment this - nothing changes
*/

delete[] buffer;

file.close(); // NOTE: if I comment this line - program properly starts (!)

Что я делаю неправильно?

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]