STL 003(vector存放自定义数据类型)
作者:
JavaBean
,
2021-01-18 09:57:04
,
所有人可见
,
阅读 407
vector存放自定义数据类型
#include<iostream>
#include<vector>
using namespace std;
class Person
{
public:
Person(string name,int age)
{
this->m_Name=name;
this->m_Age=age;
}
string m_Name;
int m_Age;
};
void test01()
{
vector<Person>v;
Person p1{"aaa",10};
Person p2{"bbb",20};
Person p3{"ccc",30};
Person p4{"ddd",40};
//向容器中添加数据
v.push_back(p1);
v.push_back(p2);
v.push_back(p3);
v.push_back(p4);
//遍历数据
for(vector<Person>::iterator it=v.begin(),it!=v.end;it++)
{
//*it是Person类
cout<<(*it).m_Name<<endl<<(*it).m_Age<<endl;
//或者 cout<<it->m_Name;
}
}
void test02()//地址
{
vector<Person*>v;
Person p1{"aaa",10};
Person p2{"bbb",20};
Person p3{"ccc",30};
Person p4{"ddd",40};
//向容器中添加数据
v.push_back(&p1);
v.push_back(&p2);
v.push_back(&p3);
v.push_back(&p4);
//遍历数据
for(vector<Person*>::iterator it=v.begin(),it!=v.end;it++)
{
//*it 是指针
cout<<(*it)->m_Name;
}
}
int main()
{
test01();
return 0;
}
this是什么
指针 指向自身的指针吧 具体可以百度一下C++ this