博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2020年11月23日

摘要: 1、分类中添加关联属性 类中声明属性 @property(nonatomic,assign) int age; 相当于 @interface People : NSObject { int _age; } - (void)setAge:(int)age; - (int)age; @end - (vo 阅读全文

posted @ 2020-11-23 21:55 肖无情 阅读(118) 评论(0) 推荐(0) 编辑

2019年8月21日

摘要: 1、推荐去官网下载,速度并不慢,网址: https://flutter.io/setup-macos/ 配置环境变量,这里笔者使用命令行: vim ~/.bash_profile 添加环境配置 export PATH=/你的flutter文件夹所在位置/flutter/bin:$PATH 保存一下, 阅读全文

posted @ 2019-08-21 14:35 肖无情 阅读(543) 评论(0) 推荐(0) 编辑

2018年1月31日

摘要: 第一步,从https://github.com/SnapKit/SnapKit下载源码的ZIP包,解压出来是这个样子的: 第二步,新建一个iOS工程(Swift版本的),并将SnapKit-develop文件夹中的SnapKit.xcodeproj拖到项目中。 第三步,按照图中标注的顺序点击。 第四 阅读全文

posted @ 2018-01-31 14:29 肖无情 阅读(185) 评论(0) 推荐(0) 编辑

2017年10月11日

摘要: block 捕获自动变量的瞬间值; 注释在代码中;请参考傻瓜学编程之block_3 阅读全文

posted @ 2017-10-11 22:20 肖无情 阅读(318) 评论(0) 推荐(0) 编辑

2017年10月10日

摘要: 1、引出 a:必须获取finalValue函数的名字, b: finalValue如果想使用 dd,pp (也即finprint中的形式参数 j和i) 必须传递到finalValue中才可以使用; 1.2、不用必须获取finalValue函数的名字, 1.3、不用传递参数参数也可以访问finprin 阅读全文

posted @ 2017-10-10 23:26 肖无情 阅读(508) 评论(0) 推荐(0) 编辑

摘要: 1、指针函数:本质是一个函数。函数返回类型是某一类型的指针 格式: 类型标识符 *函数名(参数表) int *f(x,y); float *fun(); float *p; p = fun(a); int* find(void); int * find(){ int *pp ; pp= 0; ret 阅读全文

posted @ 2017-10-10 23:21 肖无情 阅读(20368) 评论(1) 推荐(0) 编辑

摘要: block的实质 以一个简单的实现为列子; 终端:clang -rewrite-objc 类文件名.m cpp文件中关键代码: 运行时的myBlcokTest方法; 去掉类型转化 __People__myBlcokTest_block_impl_0:是一个结构体 包含两个成员: 通过结构体的构造函数 阅读全文

posted @ 2017-10-10 23:20 肖无情 阅读(261) 评论(0) 推荐(0) 编辑

摘要: nil/Nil/NULL/NSNull的区别 nil/Nil/NULL/NSNull的区别 nil/Nil/NULL/NSNull的区别 nil/Nil/NULL/NSNull的区别 一个简单的小例子: NSObject *obj = nil; NSLog(@"%@",obj); =>null NS 阅读全文

posted @ 2017-10-10 23:18 肖无情 阅读(241) 评论(0) 推荐(0) 编辑

2017年9月24日

摘要: 来源: http://blog.csdn.net/jiadabin/article/details/52129789 来源: http://blog.csdn.net/jiadabin/article/details/52129789 来源: http://blog.csdn.net/jiadabi 阅读全文

posted @ 2017-09-24 21:48 肖无情 阅读(1379) 评论(0) 推荐(0) 编辑

2017年9月22日

摘要: 知识点一: NSOperation是个抽象类。只能使用它的子类来封装任务。有三种方式来封装任务。 NSOperation(不使用NSOperationQueue的情况下)需要使用start() 才能开启操作, 并且默认情况下(只有一个操作,如果有两个或多个操作呢?)在当前线程中同步执行操作; 注意: 阅读全文

posted @ 2017-09-22 09:21 肖无情 阅读(187) 评论(0) 推荐(0) 编辑