码迷,mamicode.com
首页 >  
搜索关键字:异常安全    ( 63个结果
Effective C++ .10,11 operator=的约定与注意
1. 返回一个reference to *this返回一个指向自身的引用符合惯例,可以进行如(a=c).modify()类似的操作,即可以形成链式操作,否则修改的只是一个临时对象。这个和Java中常用的builder模式是一个道理2. 自我赋值的检测和异常安全赋值进行前进行自我检测,相同就直接返回。...
分类:编程语言   时间:2014-12-21 20:34:54    阅读次数:261
《github一天一道算法题》:搜索二叉树接口实现大合集
读书、思考、写代码! 说明: (1)这里实现了搜索二叉树的全部常用操作 (2)限于时间和精力,实现的较为粗糙,内存泄露、成员变量访问控制、返回类型、异常安全等没有照顾的到 (3)一切实现的手段都是贴近底层操作,关注原理。以后可能对推倒重来,实现一个完备的接口系统。 /********************************************* * copyright@hus...
分类:编程语言   时间:2014-12-09 12:22:46    阅读次数:343
C++异常安全的赋值运算符重载 【微软面试100题 第五十五题】
题目要求: 类CMyString的声明如下:class CMyString{public: CMyString(char *pData=NULL); CMyString(const CMyString &str); ~CMyString(void); CMyString &...
分类:编程语言   时间:2014-11-11 20:33:24    阅读次数:215
小米公司三面
一面1.算法题目atoi实现2. singleton 和 observer 设计模型observer 中的subscriber和unsubscribe 在多线程下的异常安全性问题(这个不是很清楚)3. 僵尸进程父进程未处理子进程的退出状态,导致占用系统资源(进程号)http://www.cnblog...
分类:移动开发   时间:2014-10-19 10:09:13    阅读次数:230
C++11之右值引用(三):使用C++11编写string类以及“异常安全”的=运算符
前面两节,说明了右值引用和它的作用。下面通过一个string类的编写,来说明右值引用的使用。 相对于C++98,主要是多了移动构造函数和移动赋值运算符。 先给出一个简要的声明: class String { public: String(); String(const char *s); //转化语...
分类:编程语言   时间:2014-10-17 21:40:15    阅读次数:207
实现一个单例模式Singleton
分析: 1.单例模式表明该类只有一个实例被创建,首先将类的构造方法设置为私有,然后写一个public静态函数用来创建实例,利用该类的一个静态指针来保存唯一实例,创建之前先判断是否已经存在,如果已经创建过了就不再创建。 2.考虑到线程安全和异常安全可以在静态函数中加锁。 3.考虑在合适的时机析构创建的实例,因此在该类中定义一个内嵌类delInstance,然后在singleton中添加一个de...
分类:其他好文   时间:2014-09-05 16:12:31    阅读次数:177
《Effective C++》学习笔记(八)
原创文章,转载请注明出处:http://blog.csdn.net/sfh366958228/article/details/38948683 条款29:为“异常安全”而努力是值得的 看完这个条款,第一感觉就是之前写的代码多么具有风险。 先看一个书上的例子,假设有个class用来表现夹带背景图案的GUI菜单,这个class也要用于多线程环境当中,所以我们考虑用了一个互斥器(mutex...
分类:编程语言   时间:2014-08-31 23:06:32    阅读次数:535
Effective C++ Item 29 为”异常安全”而努力是值得的
经验:异常安全函数即使发生异常也不会泄漏资源或允许任何数据结构败坏。这样的函数区分为三种 可能的保证: 基本型-->发生异常,程序处于某个合法状态 强烈型-->发生异常,程序处于原先状态 不抛异常型-->承诺绝不抛出殿堂 示例: class PrettyMenu{ public: //... void changeBackground(std::istream &imgSrc); //改变背景图像 //... private: Mutex mutex; //互斥器 Image *bgI...
分类:编程语言   时间:2014-07-12 21:35:16    阅读次数:298
现代C++学习笔记之一入门篇:智能指针(C++ 11)
原始指针:通过new建立的*指针智能指针:通过智能指针关键字(unique_ptr, shared_ptr ,weak_ptr)建立的指针在现代 C++ 编程中,标准库包含智能指针,该指针用于确保程序不存在内存和资源泄漏且是异常安全的。在现代 C++ 中,原始指针仅用于范围有限的小代码块、循环或者性...
分类:编程语言   时间:2014-06-30 13:49:42    阅读次数:354
Effective C++:条款29:为“异常安全”而努力是值得的
(一)先看下面这些代码: class PrettyMenu { public: void changeBackground(istream& imgSrc); private: Mutex mutex; //由于这个class希望用于多线程环境,所以它有这个互斥器作为并发控制之用 Image* bgImage; //目前的背景图像 int imageChan...
分类:编程语言   时间:2014-06-25 08:35:48    阅读次数:339
63条   上一页 1 ... 4 5 6 7 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!