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

vector::clear()

时间:2021-04-29 12:05:53      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:https   tar   detail   str   ack   意思   return   city   验证   

参考:https://blog.csdn.net/Hk_john/article/details/72463318
以下是内容:

最近经常用到vector容器,发现它的clear()函数有点意思,经过验证之后进行一下总结。

clear()函数的调用方式是,vector temp(50);//定义了50个datatype大小的空间。temp.clear();

作用:将会清空temp中的所有元素,包括temp开辟的空间(size),但是capacity会保留,即不可以以temp[1]这种形式赋初值,只能通过temp.push_back(value)的形式赋初值。

同样对于vector<vector > temp1(50)这种类型的变量,使用temp1.clear()之后将会不能用temp1[1].push_back(value)进行赋初值,只能使用temp1.push_back(temp);的形式。
运行ok:

#include <iostream>
#include<vector>
using namespace std;
int main(){
	vector<vector<int>> test(50);
	vector<int> temp;
	test[10].push_back(1);
	cout<<test[10][0]<<endl;
	test.clear();
	for(int i=0;i<51;i++)
	test.push_back(temp);
	system("pause");
	return 0;
}```
运行不ok:
```#include <iostream>
#include<vector> 
using namespace std; 
int main(){ 
	vector<vector<int>> test(50);
	vector<int> temp;
	test[10].push_back(1);
	cout<<test[10][0]<<endl;
	test.clear(); 
	for(int i=0;i<50;i++)
	test[i].push_back(1);
	system("pause");
	return 0;
}```

vector::clear()

标签:https   tar   detail   str   ack   意思   return   city   验证   

原文地址:https://www.cnblogs.com/solomarge/p/14715613.html

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