boost:exception使用实例
/************************************************************************/
/*功能描述: boost exception使用实例 */
/*作者 : kernel_main */
/*创建时间: 2014.6.8 */
/************************************************************************/
#include <iostream>
#include <exception> #include <boost/exception/all.hpp> struct my_exception : /* 自定义异常类 */
virtual std::exception, /* 虚继承,struct默认public继承 */
virtual boost::exception /* 虚继承,struct默认public继承 */
{
/* 空实现,不需要实现代码 */
}; /* 异常信息的类型 */
typedef boost::error_info<struct tag_err_no, int> err_no;
typedef boost::error_info<struct tag_err_str,std::string> err_str; int main()
{
using namespace boost;
try
{
try
{
/* 抛出异常,存储错误码 */
throw my_exception() << err_no();
}
catch (my_exception& e) /* 捕获异常,使用引用形式 */
{
std::cout << *get_error_info<err_no>(e) << std::endl;
std::cout << e.what() << std::endl;
e << err_str("other info"); /* 向异常追加信息 */
throw; /* 再次抛出异常 */
}
}
catch (my_exception& e)
{
std::cout << *get_error_info<err_str>(e) << std::endl;
std::cout << e.what() << std::endl;
}
return ;
}
boost:exception使用实例的更多相关文章
- boost exception
boost exception provides a new exception type, that lets you add data to an exception after it has b ...
- boost::asio 使用实例
#include <iostream> #include <boost/asio.hpp> using namespace std; using namespace boost ...
- boost exception jam0.exe 异常错误
在Windows 8 64 bit下执行boost_1_53_0的bootstrap.bat出现了jam0.exe执行错误 搜索网页发现需要修改两处文件: tools/build/v2/engine/ ...
- boost:thread使用实例
/************************************************************************/ /*功能描述: boost thread使用实例 ...
- boost库之udp广播实例
//UdpLinkServer.h //udp服务 #pragma once #include <boost/asio/ip/tcp.hpp> #include <boost/asi ...
- Boost 1.61.0 Library Documentation
http://www.boost.org/doc/libs/1_61_0/ Boost 1.61.0 Library Documentation Accumulators Framework for ...
- boost开发指南
C++确实很复杂,神一样的0x不知道能否使C++变得纯粹和干爽? boost很复杂,感觉某些地方有过度设计和太过于就事论事的嫌疑,对实际开发工作的考虑太过于理想化.学习boost本身就是一个复杂度,有 ...
- Win7下Boost库的安装
Boost库是C++领域公认的经过千锤百炼的知名C++类库,涉及编程中的方方面面,简单记录一下使用时的安装过程 1.boost库的下载 boost库官网主页:www.boost.org 2.安装 将下 ...
- (八)boost库之异常处理
(八)boost库之异常处理 当你面对上千万行的项目时,当看到系统输出了异常信息时,你是否想过,如果它能将文件名.行号等信息输出,该多好啊,曾经为此绞尽脑汁. 今天使用boost库,将轻松的解决这个问 ...
随机推荐
- 获取table的行数
对于可扩展行的表格,有时需要不断的添加新行.注意的是,在IDE中编写table的时候,我们常常忽略tbody标签: <table style="width: 100%;"&g ...
- mysql server has gone away 与max_allowed_packed
今天在本地测试测试给所有店铺批量发信息的功能,大约2万条记录,在本地和备用linux服务器上测试都没有问题,但上windows时一直报mysql server has gone away的错误,搜索一 ...
- bug_ _图片_android.view.InflateException: Binary XML file line #1: Error inflating class <unknown>
=========== 1 java.lang.RuntimeException: Unable to start activity ComponentInfo{com.zgan.communit ...
- vim使用快捷键
vim使用快捷键 索引 1. 关于Vim 1.1 Vim的几种模式 2. 启动Vim 3. 文档操作 4. 光标的移动 4.1 基本移动 4.2 翻屏 4.3 标记 5. 插入文本 5.1 基本插入 ...
- Maven依赖(转)
相同依赖级别,先加入的先依赖不同依赖级别,级别短的先依赖 version-->SNAPSHOTxxx-里程碑-->SNAPSHOT,alpha,beta,Release(RC),GA()s ...
- 使用BeanUtils操作Bean属性
package com.wzh.test.beanutils; import java.lang.reflect.InvocationTargetException; import java.text ...
- 非常详细GC学习笔记
转载:http://blog.csdn.net/fenglibing/article/details/6321453 这是我公司同事的GC学习笔记,写得蛮详细的,由浅入深,循序渐进,让人一看就懂,特转 ...
- ElasticSearch 概述
简介 Elasticsearch是一个基于Lucene的开源搜索引擎.Elasticsearch也使用Java开发并使用Lucene作为其核心来实现所有索引和搜索的功能,但是它的目的是通过简单的RES ...
- [HDU 4787] GRE Words Revenge (AC自动机)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4787 题目大意: 给你若干个单词,查询一篇文章里出现的单词数.. 就是被我水过去的...暴力重建AC自 ...
- [HDU 2546]饭卡 (动态规划)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2546 题意:见题目 刚开始怎么写都写不对,后来吃饭的时候想了想记忆化搜索的办法 就是说设dp(now, ...