Название: оператор if() без скобок Отправлено: Ilya_181 от Ноябрь 06, 2017, 01:35 Код
Я так понимаю строка всегда будет выполняться? Почему? Я всегда понимал что, следующая строка, после оператора без скобок, будет выполняться согласно условию. И строка в смысле, все то что написано до ; Если, например, после оператора будет 2 строки, то 1 выполняется согласно условию, а 2 выполняется всегда. Разве не так? Название: Re: оператор if() без скобок Отправлено: Alex Custov от Ноябрь 06, 2017, 11:57 Разве не так? Так. Строки ты видимо сравниваешь неправильно. Ибо QString() и QString("") - разные строки. На пустоту нужно проверять https://doc.qt.io/qt-5/qstring.html#isEmpty Название: Re: оператор if() без скобок Отправлено: titan83 от Ноябрь 07, 2017, 09:23 AlexCustov прав.
Почитай для общего развития: https://woboq.com/blog/qstringliteral.html Твое сравнение (если это Qt5) должно выглядеть так: Код: if (str == QStringLiteral("")) Код: if(str.isEmpty() == true) Тогда все будет так, как ты ожидаешь. ЗЫ Сам вставал на эти грабли. |