MySQL++ в VS .Net
Простейший пример (режим debug):
int main(...)
{
Connection con(use_exceptions);
try
{
con.connect("mybase", "localhost", "root", "pass");
}
catch (ConnectionFailed& er)
{
cerr << "Connection error: " << er.what() << endl;
return -1;
}
con.close();
return 0;
}
Соединение происходит нормально. Поля дескриптора заполняются правильно. Но при достижении "return 0;" происходит исключение и программка вылетает в отладчике с "Run-Time Check Failure #2 - Stack around the variable 'con' was corrupted.".
В чем тут дело? Подробное изучение документации результатов не дало. Там все больше про gcc...
P.S. Может я неверно понимаю работу с исключениями?
{
Connection con(use_exceptions);
return 0;
}
Нормально?
Цитата: Alexandoros
int main()
{
Connection con(use_exceptions);
return 0;
}
Нормально?
{
Connection con(use_exceptions);
return 0;
}
Нормально?
Вот блин... Тоже самое. :( Может быть, я криво дистрибутив собрал? Там проект под VС++ 6.0, но я изменил проект по рекомендации README.vc (для 7.1). Кстати, версия MySQL++ 2.1
попробуй через new/delete
Цитата: Alexandoros
попробуй через new/delete
int main(...)
{
Connection *mycon = new Connection;
try
{
mycon->connect("mybase", "localhost", "root", "pass");
}
// на любое исключение
catch (exception& er)
{
cout << "Connection error: " << er.what() << endl;
return -1;
}
mycon->close();
delete mycon;
return 0;
}
Теперь - "Unhandled exception...". По ходу, что-то с выделением памяти... :(