C++和Qt5之动态命名变量名

简化版本:

#include <stdio.h>
#define SET_NAME(name)  test##name
int main()
{
    int a=1;
    int SET_NAME(a) = 11;
    printf("%d",SET_NAME(a));
    return 0;
}

Qt5版本:

#define SET_NAME(name) lable##name//动态命名变量名
void MainWindow::on_pushButton_yingyong1_clicked()
{
    int count_IN=ui->lineEdit_1hao_IN->text().toInt();
    QGridLayout * layout = new QGridLayout();
    layout->setSpacing(2);     //设置单元间隔
    layout->setMargin(10);      //设置边距

    for(int i=1;i<=count_IN;i++){
        QLabel * SET_NAME(i)=new  QLabel("输出OUT"+QString::number(i),this);
        SET_NAME(i)->setAlignment(Qt::AlignHCenter);
        layout->addWidget(SET_NAME(i),i,0);
        layout->addWidget((new QPushButton("关",this)),i,1);
    }
    ui->frame_1hao->setLayout(layout);
}

参考网站:http://blog.sina.com.cn/s/blog_6a8766400100uh3v.html

 

 


版权声明:本文为zying555原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。