如何优雅地获取数字值?
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();