如何优雅地获取数字值?
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();
}
我错过了哪些更好的选项或界面?
答案 0 :(得分:3)
有一种方法int QChar::digitValue() const
which:
返回数字的数值,如果字符不是,则返回-1 一个数字。
所以,你可以写:
QChar qc('4');
int val = qc.digitValue();