canConvert只是報告QVariant進行兩個類型之間轉換的能力,例如QString和Int類型之間的轉換,重點是類型。convert判斷的是QVariant進行兩個類型的數據之間轉換的能力,例如“123”和123之間的轉換,重點是數據。
QString str1 = "Qt5.7";QVariant var1 = str1;QString str2 = "123";QVariant var2 = str2;qDebug()<<var1.canConvert(QVariant::Int);qDebug()<<var1.convert(QVariant::Int);qDebug()<<var1.toString();qDebug()<<var2.canConvert(QVariant::Int);qDebug()<<var2.convert(QVariant::Int);qDebug()<<var2.toString();輸出結果為:
true
false
"0"
true
true
"123"
使用canConvert()函數返回true的數據類型組合如下:
更多知識請翻閱《Qt Creator快速入門》的《7.2.5 QByteArray和QVariant》。
新聞熱點
疑難解答