摘要:
Objective-C 有排序的API,省了我们很多事。主要有以下3种方法。NSComparator NSArray *unsortedArray = @[@5,@3,@8,@1,@7];NSArray *sortedArray = [unsortedArray sortedArrayUs... 阅读全文
摘要:
StateDescriptionNot runningThe app has not been launched or was running but was terminated by the system.InactiveThe app is running in the foreground ... 阅读全文
摘要:
+ (id)performBlock:(void (^)())aBlock onQueue:(dispatch_queue_t)queue afterDelay:(NSTimeInterval)delay{ NSParameterAssert(aBlock != nil); __bloc... 阅读全文
摘要:
Objective-C带来了一个重大改进就是Non-fragile ivar。使得i一个类可以随意增加实例变量,不必对子类重新编译。对框架开发者(如苹果)有重大意义。最新的编译器支持@property可以自动synthesize实例变量。等于ivar+getter+setter方法。属性修饰关键字a... 阅读全文
摘要:
Xcode 3使用GCC作为编译器。编译器分为编译器前端和编译器后端。编译器前端负责展开预处理宏定义并将源代码转换成中间代码。编译器后端负责生成并优化机器代码。GCC实际上是后端编译器。主要用来编译代码而不是解析代码。这意味着苹果必须便携自己的解析器来提供调试功能。Xcode 4和iOS 5发布,默... 阅读全文
摘要:
1976年,苹果电脑公司诞生。现在苹果的所有电脑产品的命名都是与Mac有关,然而,第一代的苹果电脑与Mac没有任何关系,叫Apple I。1979年,苹果公司在研发4款产品,Apple I,Apple II,Lisa和Macintosh。Macintosh项目初期,只有4名研发工程师,后来被乔布斯看... 阅读全文
摘要:
简单地说,那些被virtual关键字修饰的成员函数,就是虚函数。虚函数的作用,用专业术语来解释就是实现多态性(Polymorphism),多态性是将接口与实现进行分离;用形象的语言来解释就是实现以共同的方法,但因个体差异而采用不同的策略。下面来看一段简单的代码class A{public: void print(){ coutprint(); p2->print();}运行一下看看结果,哟呵,蓦然回首,结果却是两个This is A。问题来了,p2明明指向的是class B的对象但却是调用的class A的print()函数,这不是我们所期望的结果,那么解决这个问题就需要用到虚函数... 阅读全文
摘要:
在实际使用中, print 和 echo 两者的功能几乎是完全一样。可以这么说,凡是有一个可以使用的地方,另一个也可以使用。但是,两者之间也还是一个非常重要的区别:在 echo 函数中,可以同时输出多个字符串,而在 print 函数中则只可以同时输出一个字符串。同时,echo函数并不需要圆括号,所以echo函数更像是语句而不像是函数。echo 和 print 都不是函数,而是语言结构,所以圆括号都不是必需的。他们的区别在于:(1) echo可以输出多个字符串,像下面这样:echo 'a','b','c';如果你非要加上圆括号,注意写成echo ( 阅读全文
摘要:
字符串操作:strtoupperstrtolowerstrpossubstr数学:round 阅读全文