• QT中foreach用法


    foreach(variables ,Container)关键字是Qt对c++的一个扩展,主要用于按顺序历经容器(container)中的对象,

    foreach用法类似于for循环,但是又有所不同,foreach可以使用一个变量名来遍历容器中的所有元素。

    foreach宏的参数依次为:元素类型,元素名,容器类型,容器名。

    假设有个vector如下面的定义:
    vector<int> v; 那么遍历v可以使用下面的代码:
    foreach(int e , vector<int> v)
    {//使用(e)来访问v的元素
    }
    例如:

    QLinkList list;

    QString str;

          foreach(str , list)

       {

                qDebug()<<str;

         }

    这样就可以历经list里存储的对象了,它的作用相当于标准C++中的iterator

    QLinkList list;

    QLinkListIterator i(list);

    while(i.hasNext()) {

    qDebug()<<i.next();

    }

    例如:获取网络通信参数地址
    QList<QHostAddress> list = QNetworkInterface::allAddresses();
          foreach (QHostAddress address, list)
          {
              qDebug() <<address;
          }
    输出:

     QHostAddress( "FE80::2828:5A2D:53EB:AF76%101" )

    QHostAddress( "169.222.175.158" )

    QHostAddress( "192.168.37.1" )

    QHostAddress( "192.168.127.1" )

    QHostAddress( "FE80::3C06:E1F9:4614:184E%13" )

    QHostAddress( "169.254.34.76" )

    QHostAddress( "2001:DA8:C800:AD06:6DEE:7E90:6175:D582" )

    QHostAddress( "2001:DA8:C800:AD06:685D:ABC1:38DA:6B99" )

    QHostAddress( "FE80::6DEE:7E90:6175:D483%12" )

    QHostAddress( "172.20.41.109" )

    QHostAddress( "FE80::452C:B25A:D182:8534%12" )

    QHostAddress( "192.168.110.1" )

    QHostAddress( "FE80::797D:7F5E:605D:DF4B%12" )

    QHostAddress( "192.168.49.1" )

    QHostAddress( "::1" )

    QHostAddress( "127.0.0.1" )

    QHostAddress( "2001:0:9D38:6AB8:3CB0:38AD:53EB:D438" )

    QHostAddress( "FE80::3CB0:38AD:53EB:D438%11" )  

  • 相关阅读:
    5.单表查询
    3.数据类型1
    3.数据类型2
    mysql用户操作和权限管理
    【剑指Offer】面试题27. 二叉树的镜像
    【LeetCode】160. 相交链表
    【剑指Offer】面试题52. 两个链表的第一个公共节点
    【LeetCode】206. 反转链表
    【剑指Offer】面试题24. 反转链表
    LeetCode题解分类汇总(包括剑指Offer和程序员面试金典,持续更新)
  • 原文地址:https://www.cnblogs.com/xiaodingmu/p/6937703.html
Copyright © 2020-2023  润新知