在C++中,众所周知在一个资源管理类(例如含有指向堆内存的指针)中需要重新定义拷贝构造函数、赋值运算符以及析构函数(Big Three),在新标准下还可能需要定义移动构造函数和移动赋值运算符(Big Five)。但实际上,这条规则还可以有一个小扩展。就是在资源管理类中,往往需要重新定义自己的swap ...
分类:
其他好文 时间:
2016-10-24 23:52:33
阅读次数:
356
首先这两种方式都是延迟初始化机制,就是当要用到的时候再去初始化。 但是Effective Java书中说过:除非绝对必要,否则就不要这么做。 1. DCL (double checked locking)双重检查: 如果出于性能的考虑而需要对实例域(注意这个属性并没有被static修饰)使用延迟初始 ...
分类:
其他好文 时间:
2016-04-27 18:37:43
阅读次数:
203
什么是PIMPL(pointer to implementation) ? see: http://stackoverflow.com/questions/8972588/is-the-pimpl-idiom-really-used-in-practice https://msdn.microsof ...
分类:
编程语言 时间:
2016-04-03 23:28:29
阅读次数:
252
C++11标准推出了很多有用的新特性,本文特别关注那些相比C++98更像是一门新语言的特性,理由是: 提示: 译注: 1. Programming idiom:编程习语,在一种或多种编程语言中重复出现的表达形式,用来表示没有在编程语言中内置的简单的任务或者算法,也可以用来表示在编程语言中内置的不常用
分类:
编程语言 时间:
2016-03-14 21:46:16
阅读次数:
278
is_loaded, TRUE)) { return; } $config =& get_config(); if ($idiom == '') { $deft_lang = ( ! i...
分类:
编程语言 时间:
2016-01-26 15:22:33
阅读次数:
218
如何识别iOS不同设备if(UI_USER_INTERFACE_IDIOM() ==UIUserInterfaceIdiomPad) {// }else{//}区分目前UI_USER_INTERFACE_IDIOM()有2个返回值UI_USER_INTERFACE_IDIOM() ==UIUserI...
分类:
移动开发 时间:
2016-01-16 22:18:13
阅读次数:
384
十一:创建Define定义文件和pch预处理文件1、在Define目录里创建Const.h文件,用于保存一些常用的宏命令#define CURRENT_APPID @""#define IS_IPAD (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdio...
分类:
移动开发 时间:
2015-12-11 09:58:03
阅读次数:
326
//判断iPhone和iPad#define IS_IPHONE (!IS_IPAD)#define IS_IPAD (UI_USER_INTERFACE_IDIOM() != UIUserInterfaceIdiomPhone)//判断设备版本#define IS_IOS6_LAGACY floo...
分类:
其他好文 时间:
2015-11-20 12:44:22
阅读次数:
171
Table of ContentsNote: synonyms for each idiom are listed in parentheses.Adapter Template TODOAddress Of Readed,没啥用Algebraic Hierarchy Readed,没啥用A...
分类:
编程语言 时间:
2015-10-02 00:12:37
阅读次数:
370
1 // The standard idiom for calling the wait2 synchronized(sharedObject) {3 while(condition){4 sharedObject.wait();// Releases lock...
分类:
编程语言 时间:
2015-08-25 13:21:05
阅读次数:
266