在循环中更改指针

Changing pointer in a loop

本文关键字:指针 循环      更新时间:2023-10-16

我使用c++和QT IDE:我想把不同框的用户输入保存到一个数组中。我可以通过以下命令读取输入框的值:ui->h8x->value()

我的盒子是这样编号的:h1x, h2x, ....h16x我怎么能改变h[I]x指针在for循环,是可能的吗?

    for(i=0; i<16; i++)
     {
      array[i]=ui->h[i]x->value();
     }

h[i]x不是c++的合法语法。

您应该首先将所有Qt小部件插入QVector,然后对它们进行索引。例如:

QVector<QLineEdit *> h;
h.append(ui->h1x);
h.append(ui->h2x);
.
.
h.append(ui->h16x);

那么你可以这样写:

for(int i=0; i<16; i++)
{
  array[i] = h[i]->text();
}