Проблема такая есть класс таблицы (наследник от QtableWidget), есть класс ячейки (от класса QTableWidgetItem). В таблице поставлен прототив на мою ячейку
всё работает.
короче стоит мне в середину втсавить код, который ничего особо не меняет - обычный комментарий
приложение запускается и при работе вылетает
кажется, что он чтоли запоминает положение всех переменных и функций в файле
и если сдвигаю, то у компилятора паника
он не знает что компилирует
!!!!!!!!просто добавляю коммент в середину - компилю и приложение работает вообще неправильно, вылеты именно не в моём коде а в памяти!!!!!!!!!!
если возвращаю старую версию файла - всё на своём месте, то нормально всё работает
ребилд делал и клин - не помагает
проблемы такие не только с Qt
> msvcr90d.dll!memcpy(unsigned char * dst=0x014b0040, unsigned char * src=0x00d14390, unsigned long count=13961896) Line 407 Asm
msvcr90d.dll!memcpy_s(void * dst=0x014b0040, unsigned int sizeInBytes=13961903, const void * src=0x00d14390, unsigned int count=13961896) Line 67 + 0x11 bytes C
msvcp90d.dll!std::char_traits<char>::_Copy_s(char * _First1=0x014b0040, unsigned int _Size_in_bytes=13961903, const char * _First2=0x00d14390, unsigned int _Count=13961896) Line 582 + 0x16 bytes C++
msvcp90d.dll!std::_Traits_helper::copy_s<std::char_traits<char> >(char * _First1=0x014b0040, unsigned int _Size=13961903, const char * _First2=0x00d14390, unsigned int _Count=13961896, std::_Secure_char_traits_tag __formal={...}) Line 714 + 0x15 bytes C++
msvcp90d.dll!std::_Traits_helper::copy_s<std::char_traits<char> >(char * _First1=0x014b0040, unsigned int _Size=13961903, const char * _First2=0x00d14390, unsigned int _Count=13961896) Line 706 + 0x22 bytes C++
msvcp90d.dll!std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & _Right="Tх¬eШCС", unsigned int _Roff=0, unsigned int _Count=4294967295) Line 1067 + 0x25 bytes C++
msvcp90d.dll!std::basic_string<char,std::char_traits<char>,std::allocator<char> >::basic_string<char,std::char_traits<char>,std::allocator<char> >(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & _Right="Tх¬eШCС") Line 734 C++
Spreadsheet.exe!Parser::CParserSettings::CParserSettings(const Parser::CParserSettings & __that={...}) + 0x48 bytes C++
Spreadsheet.exe!Spreadsheet::CSpreadsheetCell::getParserSettings() Line 57 + 0x21 bytes C++
Spreadsheet.exe!CSpreadsheet::updateCellSettings(int row=1, int column=0) Line 175 + 0x3b bytes C++
Spreadsheet.exe!CSpreadsheet::qt_metacall(QMetaObject::Call _c=InvokeMetaMethod, int _id=24, void * * _a=0x0012d22c) Line 150 C++
QtCored4.dll!QMetaObject::metacall(QObject * object=0x0012fe48, QMetaObject::Call cl=InvokeMetaMethod, int idx=149, void * * argv=0x0012d22c) Line 238 C++
QtCored4.dll!QMetaObject::activate(QObject * sender=0x0012fe48, const QMetaObject * m=0x65ac5764, int local_signal_index=13, void * * argv=0x0012d22c) Line 3272 + 0x27 bytes C++
QtGuid4.dll!QTableWidget::cellChanged(int _t1=1, int _t2=0) Line 302 + 0x15 bytes C++
QtGuid4.dll!QTableWidgetPrivate::_q_emitItemChanged(const QModelIndex & index={...}) Line 1634 C++
QtGuid4.dll!QTableWidget::qt_metacall(QMetaObject::Call _c=InvokeMetaMethod, int _id=28, void * * _a=0x0012d394) Line 168 + 0x16 bytes C++
Spreadsheet.exe!CSpreadsheet::qt_metacall(QMetaObject::Call _c=InvokeMetaMethod, int _id=121, void * * _a=0x0012d394) Line 111 + 0x15 bytes C++
QtCored4.dll!QMetaObject::metacall(QObject * object=0x0012fe48, QMetaObject::Call cl=InvokeMetaMethod, int idx=121, void * * argv=0x0012d394) Line 238 C++
QtCored4.dll!QMetaObject::activate(QObject * sender=0x00d50aa8, const QMetaObject * m=0x67340880, int local_signal_index=0, void * * argv=0x0012d394) Line 3272 + 0x27 bytes C++
QtCored4.dll!QAbstractItemModel::dataChanged(const QModelIndex & _t1={...}, const QModelIndex & _t2={...}) Line 148 + 0x14 bytes C++
QtGuid4.dll!QTableModel::setItem(int row=1, int column=0, QTableWidgetItem * item=0x00d70670) Line 219 C++
QtGuid4.dll!QTableWidget::setItem(int row=1, int column=0, QTableWidgetItem * item=0x00d70670) Line 1962 C++
QtGuid4.dll!QTableModel::setData(const QModelIndex & index={...}, const QVariant & value=QString = "333", int role=2) Line 432 C++
QtGuid4.dll!QStyledItemDelegate::setModelData(QWidget * editor=0x00d54448, QAbstractItemModel * model=0x00d50aa8, const QModelIndex & index={...}) Line 538 + 0x3b bytes C++
QtGuid4.dll!QAbstractItemView::commitData(QWidget * editor=0x00d54448) Line 2760 C++
QtGuid4.dll!QAbstractItemView::qt_metacall(QMetaObject::Call _c=InvokeMetaMethod, int _id=29, void * * _a=0x0012d744) Line 247 + 0x19 bytes C++
QtGuid4.dll!QTableView::qt_metacall(QMetaObject::Call _c=InvokeMetaMethod, int _id=60, void * * _a=0x0012d744) Line 118 + 0x14 bytes C++
QtGuid4.dll!QTableWidget::qt_metacall(QMetaObject::Call _c=InvokeMetaMethod, int _id=60, void * * _a=0x0012d744) Line 135 + 0x14 bytes C++
Spreadsheet.exe!CSpreadsheet::qt_metacall(QMetaObject::Call _c=InvokeMetaMethod, int _id=60, void * * _a=0x0012d744) Line 111 + 0x15 bytes C++
QtCored4.dll!QMetaObject::metacall(QObject * object=0x0012fe48, QMetaObject::Call cl=InvokeMetaMethod, int idx=60, void * * argv=0x0012d744) Line 238 C++
QtCored4.dll!QMetaObject::activate(QObject * sender=0x00d14390, const QMetaObject * m=0x65d29a68, int local_signal_index=0, void * * argv=0x0012d744) Line 3272 + 0x27 bytes C++
QtGuid4.dll!QAbstractItemDelegate::commitData(QWidget * _t1=0x00d54448) Line 102 + 0x15 bytes C++
QtGuid4.dll!QStyledItemDelegatePrivate::_q_commitDataAndCloseEditor(QWidget * editor=0x00d54448) Line 103 C++
QtGuid4.dll!QStyledItemDelegate::qt_metacall(QMetaObject::Call _c=InvokeMetaMethod, int _id=0, void * * _a=0x00d63ef8) Line 76 C++
QtCored4.dll!QMetaObject::metacall(QObject * object=0x00d14390, QMetaObject::Call cl=InvokeMetaMethod, int idx=9, void * * argv=0x00d63ef8) Line 238 C++
QtCored4.dll!QMetaCallEvent::placeMetaCall(QObject * object=0x00d14390) Line 534 + 0x19 bytes C++
QtCored4.dll!QObject::event(QEvent * e=0x00d70550) Line 1211 + 0x14 bytes C++
QtGuid4.dll!QApplicationPrivate::notify_helper(QObject * receiver=0x00d14390, QEvent * e=0x00d70550) Line 4396 + 0x11 bytes C++
QtGuid4.dll!QApplication::notify(QObject * receiver=0x00d14390, QEvent * e=0x00d70550) Line 3798 + 0x10 bytes C++
QtCored4.dll!QCoreApplication::notifyInternal(QObject * receiver=0x00d14390, QEvent * event=0x00d70550) Line 732 + 0x15 bytes C++
QtCored4.dll!QCoreApplication::sendEvent(QObject * receiver=0x00d14390, QEvent * event=0x00d70550) Line 215 + 0x39 bytes C++
QtCored4.dll!QCoreApplicationPrivate::sendPostedEvents(QObject * receiver=0x00000000, int event_type=0, QThreadData * data=0x003d7828) Line 1373 + 0xd bytes C++
QtCored4.dll!qt_internal_proc(HWND__ * hwnd=0x00230da2, unsigned int message=1025, unsigned int wp=0, long lp=0) Line 503 + 0x10 bytes C++
user32.dll!7e368734()
[Frames below may be incorrect and/or missing, no symbols loaded for user32.dll]
user32.dll!7e368816()
user32.dll!7e3689cd()
user32.dll!7e368a10()
QtCored4.dll!QEventDispatcherWin32::processEvents(QFlags<enum QEventLoop::ProcessEventsFlag> flags={...}) Line 806 C++
QtGuid4.dll!QGuiEventDispatcherWin32::processEvents(QFlags<enum QEventLoop::ProcessEventsFlag> flags={...}) Line 1170 + 0x15 bytes C++
QtCored4.dll!QEventLoop::processEvents(QFlags<enum QEventLoop::ProcessEventsFlag> flags={...}) Line 150 C++
QtCored4.dll!QEventLoop::exec(QFlags<enum QEventLoop::ProcessEventsFlag> flags={...}) Line 201 + 0x2d bytes C++
QtCored4.dll!QCoreApplication::exec() Line 1009 + 0x15 bytes C++
QtGuid4.dll!QApplication::exec() Line 3673 C++
Spreadsheet.exe!main(int argc=1, char * * argv=0x003d7788) Line 25 + 0x6 bytes C++
Spreadsheet.exe!WinMain(HINSTANCE__ * instance=0x00400000, HINSTANCE__ * prevInstance=0x00000000, char * __formal=0x00151f4d, int cmdShow=1) Line 131 + 0x12 bytes C++
Spreadsheet.exe!__tmainCRTStartup() Line 574 + 0x35 bytes C
Spreadsheet.exe!WinMainCRTStartup() Line 399 C
kernel32.dll!7c817067()
Как решить? СПС
стоп а для прототипа важна функция clone для моего класса ячейки, просто если удаляю другие функции - всё работает норм?
?