исключение?
QList<int> list = {1, 2, 3, 4};
try {
qDebug() << list.at(1232132) << "UB WORKED";
} catch (...) {
qDebug() << "Ты дурак?";
}
Или что я делаю не так тогда, если выдает 91536 UB WORKED с различными значениями, либо вообще ничего не печатает?
А посмотрите, по-моему нет
На stackoverflow сказали, что нет. Но тогда следующий вопрос: это УБ?
Судя по реализации он внутри себя вызывает другой at(), который помечен noexcept и там просто по смещению берут элемент, ub просто https://code.woboq.org/qt5/qtbase/src/corelib/tools/qlist.h.html#565
А в дебаге ругается. Прикольно, ассерты работают, спасибо
Обсуждают сегодня