码迷,mamicode.com
首页 > 其他好文 > 详细

vector it->和*it

时间:2016-10-15 13:39:05      阅读:123      评论:0      收藏:0      [点我收藏+]

标签:

//每次写代码总是被迭代器的iter->和*iter弄晕,主要是被protobuf弄晕了

#include <vector>

struct test{
    test(){
        memset(this, 0, sizeof(test));
    }
    int a;
    int b;
};

int main()
{
    test a, b;
    a.a = a.b = 0;
    b.a = b.b = 1;

    //std::vector<test> vecT;
    //vecT.push_back(a);
    //vecT.push_back(b);
    //for (std::vector<test>::iterator it = vecT.begin(); it != vecT.end(); ++it)
    //{
    //    int v_a = it->a;//直接访问元素中的成员
    //    int v_b = it->b;

    //    v_a = (*it).a;//(*it)直接就是vector中的保存的元素
    //    v_b = (*it).b;
    //}

    std::vector<test*> vecT;
    vecT.push_back(&a);
    vecT.push_back(&b);
    for (std::vector<test*>::iterator it = vecT.begin(); it != vecT.end(); ++it)
    {
        int v_a = (*it)->a;//必须用(*it)获取到指针,然后访问到a
        int v_b = (*it)->b;
    }
    
    return 0;
}

 

vector it->和*it

标签:

原文地址:http://www.cnblogs.com/zzyoucan/p/5963061.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!