Здравствуйте, Sm0ke, Вы писали:
S>S>bool bGood = false, var;
S>if(auto result = doSomething( &bGood ); bGood && !result.empty() && (var = static_cast<bool>(result)) ) {
S> // Do something with var
S>}
S>
S>Это вроде C++17 стандарт
Вроде смог сформулировать в коде, но в один if не понял как затолкать всё:
QDateTime dtLastDate;
bool bOk = false;
auto executedQuery = pDbMan->execHelper( selectLastDateQueryText, &bOk );
if (bOk)
{
auto resVec = pDbMan->selectFirstResultToSingleStringVector(executedQuery);
if (resVec.empty())
{
// Ну нет, так нет
}
else
{
dtLastDate = dateTimeFromDbString( resVec.front() );
}
}
if (dtLastDate.isNull() || !dtLastDate.isValid())
{
// пытаемся получить dtLastDate ещё как-то
}
if (dtLastDate.isNull() || !dtLastDate.isValid())
{
// Вот тут уже мы поняли точно, что всё пошло не так
continue;
}
// Ду Гуд Жоб Хере
Мне это всё не нравится а) чисто эстетически, б) потом это всё разрастётся в ветвистое говно