Как получить значение цифр элегантно?
QChar qc('4');
int val=-1;
if(qc.isDigit()){
val = qc.toLatin1() - '0';
}
не выглядит так хорошо.
Ни один не делает преобразование в QString
поскольку создание объекта QString и начало синтаксического анализа только для этой цели кажется излишним.
QChar qc('4');
int val=-1;
if(qc.isDigit()){
val = QString(qc).toInt();
}
Какие-нибудь лучшие варианты или интерфейсы, которые я пропустил?
Есть метод int QChar::digitValue() const
который:
возвращает числовое значение цифры или -1, если символ не
цифра
Итак, вы можете написать:
QChar qc('4');
int val = qc.digitValue();
Других решений пока нет …