1 / 1 / 0
Регистрация: 26.10.2014
Сообщений: 74
|
|
1 | |
Наличие оптимизации кода - причина непредсказуемого поведения отладчика?19.05.2016, 21:11. Показов 5544. Ответов 16
Метки нет (Все метки)
Отладчик Qt Creator-а иногда перепрыгивает через строки, его поведение совершенно не поддается логике. Слышал, что для этого в qt нужно отключить оптимизацию кода. Вопрос, как это сделать? спасибо
0
|
19.05.2016, 21:11 | |
Ответы с готовыми решениями:
16
Изменение поведения кода после применения скрптов В чем причина некорректной работы кода? Указания по оптимизации кода Советы по оптимизации кода |
1 / 1 / 0
Регистрация: 26.10.2014
Сообщений: 74
|
|
20.05.2016, 10:02 [ТС] | 4 |
1. А вы не могли бы конкретно сказать, что надо прописать в pro-файле? И каком именно месте?
2. Я итак работаю в сборке debug
0
|
1 / 1 / 0
Регистрация: 26.10.2014
Сообщений: 74
|
||||||
20.05.2016, 21:13 [ТС] | 6 | |||||
Не думаю, что это поможет, но привожу ("перепрыгивание" происходит со строки 58, сразу на строку 75):
0
|
1 / 1 / 0
Регистрация: 26.10.2014
Сообщений: 74
|
|
21.05.2016, 16:19 [ТС] | 8 |
Спасибо за конкретный ответ, но почему-то не помогло. Отладчик продолжает перескакивать.
Бросается в глаза то, что в моем .pro-файле слово QMAKE_CXXFLAGS не выделилось как ключевое, то есть просто выглядит как какой-то левый текст...
0
|
1 / 1 / 0
Регистрация: 26.10.2014
Сообщений: 74
|
|
21.05.2016, 16:55 [ТС] | 10 |
Плюс к этому, IntelliSense (или как там в Qt называется автодополнение...) даже не видит слово QMAKE_CXXFLAGS как ключевое. Такое чувство, что чего-то не хватает, опции что ли какой-то...
0
|
1 / 1 / 0
Регистрация: 26.10.2014
Сообщений: 74
|
|
21.05.2016, 17:23 [ТС] | 12 |
Хотите сказать, что в Qt Creator - е ниже четвертой версии невозможно выключить оптимизацию кода?
0
|
21.05.2016, 17:49 | 13 |
Нет, но в Qt Creator 4 как минимум данное выражение подсвечивается. =)
Также в Qt Creator 4 включен статический анализатор Clang, что вам может здорово помочь, ибо ругается он на каждый чих и пых и скорее всего найдёт место где вы накосячили. Да что вы носитесь с этой оптимизацией кода? Какие ваши доказательства, что всему виной именно оптимизация кода? Только не из серии "я так Видимое вами поведение может также возникать из-за undefined behaviour, когда нарушается структура кода.
0
|
716 / 676 / 110
Регистрация: 29.05.2015
Сообщений: 4,085
|
|
22.05.2016, 07:41 | 15 |
Если перескакивает с одного дебига сразу на второй - может в них глюк? Закомментируйте эти строки и попробуйте без них, инфу можно выдать на экран с помощью QMessageBox, которая ещё и программу остановит до нажатия кнопки - увидите, что сюда дошла программа, и будет время подумать.
0
|
1 / 1 / 0
Регистрация: 26.10.2014
Сообщений: 74
|
|
22.05.2016, 17:17 [ТС] | 16 |
0
|
23.05.2016, 06:45 | 17 |
Хотите сказать, сразу эта строчка выполняется? На моём опыте такое бывает только когда портишь стек, и то вероятность этого события крайне мала. В таком виде - точно. Хотя исключать такое нельзя, потому попробуйте массивы чаров заменить на
QByteArray , тем более, что правильное построение логики позволит даже сэкономить на копировании даных.Зато что я знаю точно, отладчик должен прыгать на закрывающую строчку, а креатор, особенно если его не обновлять (или обновлять слишком часто) умеет промахиваться. Если проблемы чисто косметические, сругнитесь и проигнорируйте.
0
|
23.05.2016, 06:45 | |
23.05.2016, 06:45 | |
Помогаю со студенческими работами здесь
17
Методы оптимизации кода Нужен совет в оптимизации кода Научиться искусству оптимизации кода Нужен совет по оптимизации кода Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |