摘要: a.gcc工作流程 预处理: 宏定义替换, 头文件展开, 去掉注释, 条件编译不会进行语法检查, C文件->C文件 xxx.i 命令: gcc -E 编译: 语法检查, 生成汇编文件 xxx.s 命令: gcc -S (用时最长) 汇编: 将汇编文件生成二进制文件 xxx.o 命令: gcc -c 阅读全文
posted @ 2016-11-25 20:29 灰狼哥 阅读(207) 评论(0) 推荐(0) 编辑
摘要: Vim是一个类似于Vi的著名的功能强大、高度可定制的文本编辑器 vim 三种工作模式: 命令模式, 编辑模式, 末行模式 a:命令模式下相关操作: 保存退出: ZZ 代码格式化: gg=G 光标移动: 移动光标: ↑↓←→ 对应 jkhl 移动到行首: 0(零); 行尾: $ 移动到文件首部: gg 阅读全文
posted @ 2016-11-25 20:05 灰狼哥 阅读(296) 评论(0) 推荐(0) 编辑
摘要: const 阅读全文
posted @ 2016-11-04 08:56 灰狼哥 阅读(70) 评论(0) 推荐(0) 编辑
摘要: Block属性的声明,首先需要用copy修饰符,因为只有copy后的Block才会在堆中,栈中的Block的生命周期是和栈绑定的 另外需要注意线程安全问题,在调用block时另一个线程有没有可能去修改block如果有, 那就用nomatomic 比如这样一个Block类型:typedef void 阅读全文
posted @ 2016-04-19 15:07 灰狼哥 阅读(578) 评论(0) 推荐(0) 编辑
摘要: 1.首先是block的声明和线程安全 * 对于没有引用外部变量的block,无论在ARC还是MRC,类型都是__NSGlobaBlock__,这种类型的block可以理解成全局的block,不需要考虑作用域,同时用copy或retain也是无效的 MyBlock block = func(); NS 阅读全文
posted @ 2016-04-19 14:43 灰狼哥 阅读(351) 评论(0) 推荐(0) 编辑
摘要: 1:导航栏 //更改状态栏,但是需要加字段 View controller-based status bar appearance == NO 默认是YES //[UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLi 阅读全文
posted @ 2016-03-12 17:56 灰狼哥 阅读(271) 评论(0) 推荐(0) 编辑
摘要: 1:OC使用的"引用计数机制"管理对象.如果对一个对象使用了alloc,[Mutable]copy,retain,那么你必须使用相应的realease或者autorelease. *自己生成并持有对象<alloc, new, copy,mutableCopy等>,持有对象<retain>,释放对象< 阅读全文
posted @ 2016-03-03 10:59 灰狼哥 阅读(278) 评论(0) 推荐(0) 编辑
摘要: 细节的变化-pch文件 Prefix Header大大的增加了Build的时间。没有了Prefix Header之后就要通过手动@import来手动导入头文件了,在失去了编程便利性的同时也降低了Build的时间 xcode6以后使用的话可以手动添加,首先创建pch文件,然后在buildsetting 阅读全文
posted @ 2016-03-02 10:58 灰狼哥 阅读(180) 评论(0) 推荐(0) 编辑
摘要: /** * 做延时操作的事情 */ [self delay]; /** * 做一次性代码,touchesBegan方法 */ /** * 队列组使用需求: * 首先:分别异步执行2个耗时的操作 * 其次:等两个异步操作都执行完毕后,在回到主线程执行操作 */ [self downLoadImage] 阅读全文
posted @ 2016-02-18 16:45 灰狼哥 阅读(186) 评论(0) 推荐(0) 编辑
摘要: - (void)viewDidLoad { [super viewDidLoad]; //GCD: Grand Central Dispatch 牛逼的中枢调度器 //纯C语言, 提供了非常多强大的函数;自动管理线程的生命周期;苹果推荐 //GCD中两个核心概念 //1.任务:执行什么操作 //2. 阅读全文
posted @ 2016-02-17 16:37 灰狼哥 阅读(421) 评论(0) 推荐(0) 编辑