c++ vector指针访问vector元素的两种方法

版权声明:本文为博主原创文章,未经博主允许不得转载。访问本人博客可以百度COCO56,获取更多资讯。有事儿请内信或者在文章下方评论 https://blog.csdn.net/COCO56/article/details/88907016

 方法一:使用指针

#include <iostream>
#include <vector>
using namespace std;

int main()
{
	vector<string>* str;
	vector<string> s;
	str = &s;
	str->push_back("123");
	str->push_back("456");
	cout << str->back() << endl;
	str->pop_back();
	size_t size = str->size();
	for (size_t i = 0; i < size; i++)
	{
		cout << str->at(i) << endl;
	}
}

方法二:使用迭代器 

#include <iostream>
#include <vector>
using namespace std;

int main()
{
	vector<int> s;
	vector<int> *p = &s;
	s.push_back(1);
 
	for (vector<int>::iterator it = p->begin(); it != p->end(); it++)
		cout << *it<<endl;    //使用迭代器,正确
 
	//cout << p[0] << endl;   //错误
    return 0;
}

猜你喜欢

转载自blog.csdn.net/COCO56/article/details/88907016
今日推荐