C++ 这些代码之间的区别是什么:其中一个代码是';nt更改标签文本

C++ 这些代码之间的区别是什么:其中一个代码是';nt更改标签文本,c++,qt,C++,Qt,我编写此代码是为了更改标签文本。但id不变: void DateTimes::on_btnHourP_clicked() { int h=ui->txtHour->text().toInt(); if(h==24) h=-1; ui->txtHour->setText(QString::number(h++));//* } 但是我的标签文本没有改变。然后我将代码更改为: void DateTimes::on_btnHourP_cl

我编写此代码是为了更改标签文本。但id不变:

void DateTimes::on_btnHourP_clicked()
{
    int h=ui->txtHour->text().toInt();
    if(h==24)
        h=-1;
    ui->txtHour->setText(QString::number(h++));//*
}
但是我的标签文本没有改变。然后我将代码更改为:

void DateTimes::on_btnHourP_clicked()
{
    int h=ui->txtHour->text().toInt();
    if(h==24)
        h=-1;
    h+=1;//*
    ui->txtHour->setText(QString::number(h));//*
}  
然后,我的标签文本将更改。

为什么?有人能解决我的问题吗?

递增运算符++将使用该值,然后递增。如果要在同一表达式中使用递增的h值。使用+h

ui->txtHour->setText(QString::number(++h));

递增运算符++将使用该值,然后递增。如果要在同一表达式中使用递增的h值。使用+h

ui->txtHour->setText(QString::number(++h));