qstring::setnum
时间: 2023-07-04 08:27:05 浏览: 150
`QString::setNum`是一个QString类的成员函数,用于将数字转换为字符串并将其设置为当前字符串对象的值。它的语法如下:
```c++
void QString::setNum(int n, int base = 10)
```
其中,第一个参数`n`是要转换的数字,第二个参数`base`表示进制,默认为十进制。例如,要将整数`42`转换为字符串并将其设置为QString对象的值,可以使用以下代码:
```c++
QString str;
int num = 42;
str.setNum(num); // str现在的值为"42"
```
相关问题
void Widget::on_btnCal_clicked() { int num = ui->editNum->text().toInt(); float price = ui->editPrice->text().toFloat(); float total = num*price; QString str = QString::setNum(total,'g',2); }
这段代码中实现了一个槽函数,当用户点击名为 btnCal 的按钮时,会执行该槽函数。槽函数的功能是读取用户在 editNum 和 editPrice 两个文本框中输入的数字,并计算它们的乘积。最后,使用 setNum() 函数将计算结果转换为字符串,并保留两位小数。但是,该函数中的计算结果并没有进行任何输出或者展示,建议您添加相应的代码将结果输出或者展示给用户。
void Widget::on_btnCal_clicked() { int num = ui->editNum->text().toInt(); float price = ui->editPrice->text().toFloat(); float total = num*price; QString str = QString::setNum(total,'g',2); }为什么会出现without boject的报错
这个报错可能是因为您在使用 `QString::setNum()` 函数时,没有指定该函数的调用对象,即没有使用 `str.` 来调用该函数。您可以将代码修改为以下形式,即在 `setNum()` 函数前加上 `str.`:
```
void Widget::on_btnCal_clicked() {
int num = ui->editNum->text().toInt();
float price = ui->editPrice->text().toFloat();
float total = num * price;
QString str = QString();
str.setNum(total, 'g', 2);
// 这里可以添加代码将结果输出或者展示给用户
}
```
这样修改后,应该就不会再出现 "without boject" 的报错了。
阅读全文