今天就写一写vector的一些异常。能够捕捉的异常。

out_of_range

相当于数组的越界了。vector会自己主动增大容量,可是假设索引超出了当前的size。就会引发异常。

#include<iostream>
#include<vector>
using namespace std;
int main()
{
vector<int>v(4);
std::cout << v[0] << std::endl;
std::cout << v[1] << std::endl;
std::cout << v[2] << std::endl;
std::cout << v[3] << std::endl;
std::cout << v[4] << std::endl;//越界
return 0;
}

除了使用索引外,还有使用vector.at()时发生越界:

#include <iostream>       // std::cerr
#include <stdexcept> // std::out_of_range
#include <vector> // std::vector int main (void) {
std::vector<int> myvector(10);
try {
myvector.at(20)=100; // vector::at throws an out-of-range
}
catch (const std::out_of_range& oor) {
std::cerr << "Out of Range error: " << oor.what() << '\n';
}
return 0;
}

std::length_error

在使用vector的时候,非常少会引发std::length_error异常,可是假设疏忽大意写这种代码:

#include <iostream>       // std::cerr
#include <stdexcept> // std::length_error
#include <vector> // std::vector int main (void) {
try {
// vector throws a length_error if resized above max_size
std::vector<int> myvector;
myvector.resize(myvector.max_size()+1);
}
catch (const std::length_error& le) {
std::cerr << "Length error: " << le.what() << '\n';
}
return 0;
}

vector* pData;

最新文章

  1. JavaScript权威设计--JavaScript脚本化文档Document与CSS(简要学习笔记十五)
  2. COGS732. [网络流24题] 试题库
  3. NEFU 558 迷宫寻路
  4. JQuery实现页面刷新滚动条自动滚动到特定位置
  5. 关于ubuntu下词典安装
  6. java.net.SocketException: recvfrom failed: ECONNRESET (Connection reset by peer)
  7. 使用RBL拦截垃圾邮件
  8. Android中LayoutInflater的使用
  9. Java深度遍历文件夹(递归实现)
  10. 【原创】Ajax的用法总结
  11. Zabbix实战-简易教程--告警屏蔽(Maintenances)
  12. Spark学习笔记之RDD中的Transformation和Action函数
  13. 微信的自动回复&amp;接入聊天机器人
  14. 在web应用中使用Log4j 2
  15. CSS多行文字超出隐藏加省略号
  16. JavaScript标识符与关键字和保留字
  17. Linux内核分析作业八
  18. Tornado入门
  19. Asp.net中汉字转换成为拼音
  20. 【转载】TCP 与 UDP 的区别

热门文章

  1. struts2 前端显示错误信息
  2. SVG 浏览器支持
  3. ipv6工具类
  4. C#线程锁使用全功略
  5. 瀑布流布局js
  6. 【design pattern】工厂方法模式和抽象工厂模式
  7. Python模块 shelve xml configparser hashlib
  8. 关于ie8下disabled属性:字体颜色问题
  9. 2017 计蒜之道 初赛 第一场 B阿里天池的新任务(简单)
  10. allegro中出光绘文件遇到问题的解决办法