2016年1月15日
摘要: objc的GCD,多线程编程就是优雅自然。 阅读全文
posted @ 2016-01-15 05:38 bbqz007 阅读(491) 评论(0) 推荐(0) 编辑
  2016年1月14日
摘要: facebook开源框架AsyncDisplayKit编译和使用注意事项 阅读全文
posted @ 2016-01-14 05:09 bbqz007 阅读(724) 评论(0) 推荐(0) 编辑
  2016年1月13日
摘要: "You can specify that an imported variable be mutable—that is, read-write— by applying the__blockstorage type modifier."文档已经清楚说明了它的作用。反汇编就是要看个究竟。__blo... 阅读全文
posted @ 2016-01-13 03:36 bbqz007 阅读(1321) 评论(1) 推荐(0) 编辑
  2016年1月12日
摘要: 不依靠 IDA pro 等工具,也能获知所有类的信息。 阅读全文
posted @ 2016-01-12 12:51 bbqz007 阅读(831) 评论(0) 推荐(0) 编辑
  2016年1月11日
摘要: objc的__strong和__weak, 在反汇编中是怎么个实情?请看。 阅读全文
posted @ 2016-01-11 11:05 bbqz007 阅读(1670) 评论(0) 推荐(0) 编辑
  2016年1月10日
摘要: 介绍objc伪指针TaggedPointer,怎么个伪?请看。 阅读全文
posted @ 2016-01-10 18:46 bbqz007 阅读(2853) 评论(0) 推荐(1) 编辑
  2016年1月9日
摘要: 我们先来定义三个NSString-(void) testNSString{ NSString* a = @"abc"; NSString* b = [NSString stringWithUTF8String:"abc"]; NSString* c = [@"ab" stringB... 阅读全文
posted @ 2016-01-09 17:19 bbqz007 阅读(1280) 评论(1) 推荐(0) 编辑
  2016年1月7日
摘要: 在分析objc_msgSend之前,先来搞清楚另一个问题。函数是什么?可能会答 void foo(void) {} 像这样就是一个函数。或者函数包括函数原型和函数定义,是一段执行某样功能的机器代码。调用函数时必须要准备两个要素,函数原型和函数入口地址。函数原型的作用是什么?答声明了函数调用的方式。不... 阅读全文
posted @ 2016-01-07 16:00 bbqz007 阅读(2549) 评论(0) 推荐(1) 编辑
  2016年1月6日
摘要: 大意就是我淘钱买了一本题集,觉得书中有些地方作者太随意,例子错得不严谨,一度阻碍阅读。作为消费者不得不拿出来说一说。本文本着不迷信,实事求是精神。本文编排如下:1.引用书中原例2.主观分析例子有错3.代码运行验证其错4.修正例子代码5.另一个求值代码现在开始。下面是书中原例引用:求重叠区间个数给定多... 阅读全文
posted @ 2016-01-06 07:56 bbqz007 阅读(1253) 评论(0) 推荐(1) 编辑
  2016年1月1日
摘要: 上一篇介绍了gcc对成员函数指针做了thunk的处理,本篇介绍vc对成员函数指针如何处理,还有动态绑定相关的处理。 同样用回上一篇的例子: struct point {float x,y;}; struct obj { virtual ~obj {} void foo(int) {} void fo 阅读全文
posted @ 2016-01-01 12:03 bbqz007 阅读(1186) 评论(0) 推荐(1) 编辑