oc对象本质:对象alloc那点事(一)[https://www.jianshu.com/p/a029af32d663]对象size那点事(二)[https://www.ji...

oc对象本质:对象alloc那点事(一)[https://www.jianshu.com/p/a029af32d663]对象size那点事(二)[https://www.ji...
1.可选类型 Swift 的可选(Optional)类型,用于处理值缺失的情况。可选表示"那儿有一个值,并且它等于 x "或者"那儿没有值"。 2.swift字符串 Swif...
swift对象本质,一个swift的对象默认占用16字节大小,在内存中的结构: swift类结构: 属性 存储属性:占用对象大小,需要在申请内存时一起申请计算属性:只有get...
macosxSDKSpecificationsPath 这个配置在哪个文件中?
MonkeyDev安装的一些坑MonkeyDev[https://github.com/AloneMonkey/MonkeyDev]是一款非常好用的非越狱插件开发集成工具,但是安装的时候或多或少会遇到一些...
一、定义 什么是泛型? 网络上对泛型编程的定义是这样的: 泛型编程是一种算法机制为types to-be-specified-later(类型确定滞后)的计算机编程风格,当具...
导读:阅读文本你将能够了解到C标准库对快速排序的支持、简单的索引技术、Thunk技术的原理以及应用、C++虚函数调用以及接口多重继承实现、动态库中函数调用的实现原理、以及在i...
使用时小技巧 一、自动开关automaticallyNotifiesObserversForKey:,如果返回NO则对应的字段监听就需要手动触发了,在set方法中把变量的修改...
NSObject有个扩展NSKeyValueCoding,所以所有的oc都都可以基于kvc进行属性的访问。先看一下kvc的各种操作方法的使用示例。 基本赋值操作 对于普通对象...
分类和类扩展 在OC类的加载[https://www.jianshu.com/p/0d728be5b598]中我们分析过分类的底层实现,其实是一个category_t的结构体...
上篇我们在dyld分析[https://www.jianshu.com/p/71345d337ae6]分析中了解到在dyld启动过程是会调用objc的init方法,而该ini...
dispatch_queue_create GCD底层提供的自定义创建队列接口,创建时的逻辑比较简单,主要是队列必要属性的设置以及queue的初始化工作。每个创建出来的队列都...
本文只是我对iOS中锁的学习笔记,没有太深入的研究讲解。先来一张ios中常用锁的性能对照图 锁的分类 自旋锁:在未获取到锁的情况下,线程会反复检查锁变量是否可用,处于一直忙等...
这里只是我对iOS内存管理方面的一些关键知识点的在线笔记,帮忙记忆,未对任何知识点进行深入的分析和探究。 TaggedPointer 这是苹果为了优化内存,对于一些NSStr...
block类型 我们都知道block有三种类型:NSGlobalBlock、NSStackBlock、NSMallocBlock,一个block没有引用外部变量的那它就是NS...
ios的编译器组成分为前端和后端,clang是前端,llvm是后端,swift语言的前端编译器是swift。前端编译器把代码最终编译成IR中间代码,然后后端进行优化生成汇编,...
关于ios启动优化的文章已经有很多了,这里作者只是做个笔记记录一下整个优化的过程中的关键技术点,方便后续查看~ 打印启动耗时 Edit Scheme -> Run -> Ar...