c++,vector的[]和at区别
来源:互联网 发布:用php写99乘法表 编辑:程序博客网 时间:2024/09/21 06:18
std::vector<int> a; std::cout<<a.size();
上面输出是0.容器初始化什么都不做,大小为0;
std::vector<int> a;// std::cout<<a.size(); a[0]=1; a.at(0)=1;
下标[]赋值会显示SIGSEGV段错误,越界错误.
at赋值会显示 terminate called after throwing an instance of ‘std::out_of_range’
c++标准不要求vector::operator[]进行下标越界检查,原因是为了效率,总是强制下标越界检查会增加程序的性能开销。
所以通常使用vector两种方法:
(1)知道vector的大小,初始化时就设立大小.也就是知道下标操作肯定是没有越界的.
(2)用push_back比较安全.
0 0
- c++,vector的[]和at区别
- vector中v[i]和v.at(i)的区别
- [C++]vector,list和deque的区别
- vector push_back和at
- vector的下标索引与at的区别
- C STL中list和vector的区别
- vector中v[i]与v.at(i)的区别
- vector<int>G[] 和 vector<vector<int> G 的区别
- ArrayList和Vector的区别
- ArrayList和Vector的区别
- ArrayList和Vector的区别
- vector和list的区别
- ArrayList和Vector的区别
- ArrayList和Vector的区别
- list和vector的区别
- Vector和ArrayList的区别
- arrayList和vector的区别
- vector和arraylist的区别
- Android BlueDroid分析: OSI中的HashMap的实现
- DOM (文档对象模型(Document Object Model))
- js小功能:定时器之滑动的ul
- 空闲时间学一个Linux命令(16)—— which命令
- Android 动画--> 图片切换效果
- c++,vector的[]和at区别
- postgsql 时间函数
- shell中$0,$?,$!等的特殊用法
- 一次性添加多个字段
- js小效果:上移和下移!
- Linux如何查看进程、杀死进程、启动进程等常用命令
- 从GITLAB误删除数据库想到的
- 17/2/3/ 兄弟郊游问题
- 【t013】无聊的军官