怎么在循环调用一个函数时,新建按钮对象时设置不同的变量名
时间: 2024-02-11 22:06:43 浏览: 28
如果你想在循环中创建多个按钮对象,并设置不同的变量名来引用它们,可以使用一个数组或列表来存储这些对象,并使用循环来创建和设置它们的属性。示例代码如下:
```c++
void MyClass::createButtons()
{
QPushButton *buttons[3];
QString buttonTexts[3] = {"Button 1", "Button 2", "Button 3"};
int buttonYPositions[3] = {10, 50, 90};
for (int i = 0; i < 3; i++) {
buttons[i] = new QPushButton(buttonTexts[i], this);
buttons[i]->setGeometry(10, buttonYPositions[i], 100, 30);
}
}
```
在这个示例代码中,我们创建了一个包含三个指针变量的数组 `buttons`,用于存储三个按钮对象。我们还创建了两个数组 `buttonTexts` 和 `buttonYPositions`,用于分别存储按钮的文本和垂直位置。在循环中,我们使用 `new` 运算符创建按钮对象,并设置它们的文本和位置。然后,我们将这些按钮对象存储到 `buttons` 数组中,可以在之后的代码中使用不同的指针变量名来引用它们。
注意,在循环中创建多个对象时,必须使用 `new` 运算符来分配内存空间,否则每次迭代都会覆盖之前的对象,导致内存泄漏。当不再需要这些对象时,需要使用 `delete` 运算符释放它们的内存空间。