王璾鑒(zi jian) 2022-04-15 11:05 采纳率: 100%
浏览 26
已结题

Qt如何将以下程序写成一个for循环

初始化一些图表的程序都很相似,想简化代码,将这些图表的初始化写进一个for循环里面,但不知道如何下手。
chart1->removeAllSeries();
chart2->removeAllSeries();
chart3->removeAllSeries();
chart4->removeAllSeries();

if(chart1->axisX()!=NULL)
    {
    chart1->removeAxis(chart1->axisX());
    chart1->removeAxis(chart1->axisY());
    }

if(chart2->axisX()!=NULL)
    {
    chart2->removeAxis(chart2->axisX());
    chart2->removeAxis(chart2->axisY());
    }
if(chart3->axisX()!=NULL)
    {
    chart3->removeAxis(chart3->axisX());
    chart3->removeAxis(chart3->axisY());
    }
if(chart4->axisX()!=NULL)
    {
    chart4->removeAxis(chart4->axisX());
    chart4->removeAxis(chart4->axisY());
    }
使用过QList,但没成功
简化代码量
  • 写回答

2条回答 默认 最新

  • bostonAlen 2022-04-15 12:01
    关注

    注意,这里只能传入指针的引用或者指针的指针,才能修改实参chart1、chart2、chart3、chart4的内容

    void fun(QChart *&chart)
    {
        chart->removeAllSeries();
        if(chart->axisX()!=NULL)
        {
            chart->removeAxis(chart->axisX());
            chart->removeAxis(chart->axisY());
        }
    }
    fun(chart1);
    fun(chart2);
    fun(chart3);
    fun(chart4);
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 4月26日
  • 已采纳回答 4月18日
  • 创建了问题 4月15日

悬赏问题

  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料
  • ¥15 使用R语言marginaleffects包进行边际效应图绘制
  • ¥20 usb设备兼容性问题
  • ¥15 错误(10048): “调用exui内部功能”库命令的参数“参数4”不能接受空数据。怎么解决啊
  • ¥15 安装svn网络有问题怎么办