条款6当推断意外类型时使用显式的类型初始化语句基础知识 当使用std::vector的时候,类型推断会出现问题:std::vector features(const Widget& w);// OKbool highPriority = features(w)[5];processWidget(w....
分类:
编程语言 时间:
2015-08-19 00:03:49
阅读次数:
233
PIMPL(pointer to implementation)是一种常用的,用来对“类的接口与实现”进行解耦的方法。pimpl具有如下优点:
降低模块的耦合
降低编译依赖,提高编译速度
接口与实现分离
为了实现pimpl模式,我们先来看一种普通的类的设计方法。
假如我们要设计一书籍类Book,Book包含目录属性,并提供打印书籍信息的对外接口,Book设计如下:class Book
{
publ...
分类:
编程语言 时间:
2015-08-13 15:46:36
阅读次数:
230
Idiomatic Phrases GameProblem DescriptionTom is playing a game called Idiomatic Phrases Game. An idiom consists of several Chinese characters and has ...
分类:
其他好文 时间:
2015-08-12 18:38:50
阅读次数:
155
只需要实现nibName方法即可另外还需在vc控制器初始化的时候不指定对应的nib文件名-(NSString *)nibName{ if(UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) { if(IS_IPHONE_4)...
分类:
其他好文 时间:
2015-07-19 23:09:26
阅读次数:
115
1.父视图的透明度属性会传递给子视图2.iPad可以运行iPhone的程序 iPhone不可以运行iPad的程序3. //判断是iPad 还是iPhone if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) { NSLog(@"iPad...
分类:
移动开发 时间:
2015-07-02 15:41:39
阅读次数:
136
之前看代码,一直对pIml这个用法一知半解,参考这里的一篇文章后有所收获。总结一下,pIml的好处如下:第一,引入更多的头文件降低编译速度。而且这个声明当然写在一个头文件里,而头文件,是不能预编译或增量编译的,如果你因此而引入一个诸如之类的头文件,产生的代价可能是一杯咖啡的编译时间--而且每次编译都...
分类:
其他好文 时间:
2015-06-30 20:18:23
阅读次数:
131
DescriptionTom is playing a game called Idiomatic Phrases Game. An idiom consists of several Chinese characters and has a certain meaning. This game w...
分类:
其他好文 时间:
2015-06-08 23:16:58
阅读次数:
240
【C++自我精讲】基础系列六 PIMPL模式
前言
很实用的一种基础模式。
1 PIMPL解释
定义:PIMPL(PrivateImplementation
或 Pointer to Implementation)是通过一个私有的成员指针,将指针所指向的类的内部实现数据进行隐藏。
2 PIMPL优点
举例:
//x.h
class X
{...
分类:
编程语言 时间:
2015-05-25 09:59:16
阅读次数:
132
分类:C/C++2012-08-30 21:402017人阅读评论(2)收藏举报任何管理某资源的类比如智能指针需要遵循一个规则(The Rule of Three):如果你需要显式地声明一下三者中的一个:析构函数、拷贝构造函数或者是拷贝赋值操作符,那么你需要显式的声明所有这三者。拷贝构造函数和析构函...
分类:
编程语言 时间:
2015-05-19 12:22:02
阅读次数:
206
转自:http://blog.csdn.net/lvxiangan/article/details/45288505#define IS_IPAD (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)#define IS_IPHONE (UI_...
分类:
移动开发 时间:
2015-05-12 20:50:15
阅读次数:
164