2014年10月3日
摘要: C++的异常类是没有栈痕迹的,如果需要获取栈痕迹,需要使用以下函数: #include int backtrace(void **buffer, int size); char **backtrace_symbols(void *const *buffer, int size); void backtrace_symbols_fd(void *const *buffer, int ... 阅读全文
posted @ 2014-10-03 23:43 inevermore 阅读(1477) 评论(0) 推荐(0) 编辑
摘要: 前面我们使用了uninitialized_fill,来批量初始化某一段内存。 下面提供三个函数的实现代码,这三个代码的共同点是: 1.遇到错误,抛出异常 2.出现异常时,把之前构造的对象全部销毁 所以,这三个函数要么成功,要么无任何副作用。使用异常来通知使用者,所以在catch块中,处理完异常后要将异常再次向外抛出。 #ifndef MEMORY_HPP #define... 阅读全文
posted @ 2014-10-03 00:40 inevermore 阅读(385) 评论(0) 推荐(0) 编辑