1. block的本质是一个Objective-C的对象。为什么这么说? 在Objective-C中。runtime会在执行时依据对象的isa指针的指向,来度额定这个对象的类型。也能够觉得一个对象。它具有isa指针。就是一个OC对象 2. 你怎么知道block有isa指针呢。我们能够通过clang命 ...
分类:
移动开发 时间:
2017-08-19 10:51:24
阅读次数:
206
转载自 OC学习篇之 归档和解挡 OC中的归档就是将对象写入到一个文件中,Java中的ObjectInputStream和ObjectOutputStream来进行操作的。当然在操作的这些对象都是需要实现一个接口:Serializable,同样的OC中操作的对象也是需要实现一个协议的,后面会说到。 ...
分类:
其他好文 时间:
2017-08-18 18:37:50
阅读次数:
185
现在OC开发中,链表用的越来越少,原因就是使用链表这种数据结构,去查询链表中的数据的时候,太过耗时。其实是否使用链表,需要具体分析。当需要用空间去换取时间的时候,适合使用数组这种数据结构。而当使用时间去换取空间的时候,比较适合使用链表去存储数据。 ...
分类:
其他好文 时间:
2017-08-18 18:35:25
阅读次数:
212
OC提供了丰富的I/O相关API,如果只是管理文件和目录,程序可以使用NSFileManager进行管理,包括创建、删除、移动和复制文件等;如果程序需要读取文件内容,则可通过NSFileHandle进行处理;如果需要读取网络资源,则可通过NSURL进行处理;如果程序只是读取项目内部资源,则可借助MS ...
分类:
其他好文 时间:
2017-08-18 17:10:31
阅读次数:
126
1、像一般创建项目的步骤一样。创建一个用于測试的项目或者打开一个待測试的项目。 (oc是5.0之前所使用的測试,如今用的是XCtestCase,默认会创建一个主的測试类。曾经版本号可能非常多步骤省去) 例如以下:我们能够看到一个text中的測试文件,如今全部測试类都是继承XCTestCase类。 2 ...
分类:
移动开发 时间:
2017-08-18 09:39:07
阅读次数:
266
1. 我们说的oc是动态执行时语言是什么意思? 答案:多态。 主要是将数据类型的确定由编译时,推迟到了执行时。 这个问题事实上浅涉及到两个概念。执行时和多态。 简单来说。执行时机制使我们直到执行时才去决定一个对象的类别,以及调用该类别对象指定方法。 多态:不同对象以自己的方式响应同样的消息的能力叫做 ...
分类:
移动开发 时间:
2017-08-17 18:39:30
阅读次数:
231
OC集合类是一些非常有用的工具类,它可以用于存储多个数量不等的对象,并可以实现常用的数据结构(栈、队列等),此外,OC集合还可用于保存具有映射关系的关联数组。OC的集合大致可以分为:NSArray、NSSet、NSDictionary三种体系。NSArray代表有序可重复的集合;NSSet代表无序不 ...
分类:
其他好文 时间:
2017-08-17 13:02:34
阅读次数:
152
近期了解了一下OC的Runtime,真的是OC中非常强大的一个机制,看起来比較底层,但事实上能够有非常多活用的方式。 什么是Runtime 我们尽管是用Objective-C写的代码,事实上在运行过程中都会被转化成C代码去运行。比方说OC的方法调用都会转成C函数 id objc_msgSend ( ...
分类:
其他好文 时间:
2017-08-17 12:35:03
阅读次数:
155
Directory not empty这个错误经常出现,出现的原因也很多,今天主要记录一下楼主自己碰到的这种情况. 全部错误提示: error: couldn't remove ‘路径/app-fzyywcmxddbjxecaywhttieikzuq/Build/Products/Release-i ...
分类:
其他好文 时间:
2017-08-17 10:26:10
阅读次数:
165
逛知乎途中,发现了一些C++变态用法,现在记录下来。 第一:打印的结果是 4,5。 也就是说第八行的代码++i没有执行。的确没执行。原因是sizeof是预编译指令,在编译阶段就执行了。 第二:打印出来的结果是9876543210. 体会-->符号的用法。 第三:打印结果是A。 这里将一个C风格字符串 ...
分类:
编程语言 时间:
2017-08-16 18:24:03
阅读次数:
197