自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 资源 (9)
  • 收藏
  • 关注

原创 OC对象的本质与initIsa

先上结论:OC对象的本质是结构体,结构体内部是一个指针;1. 如何探究通常我们编写的OC代码,其底层都是 C/C++代码,所以 OC对象都会转换成 C/C++的某种数据结构。那么我们可以通过clang,将相关的OC文件编译成C/C++文件:clang -rewrite-objc main.m -o main.cpp2. 源码分析main.m文件源码:@interface Student : NSObject@property (nonatomic, copy) NSString

2021-06-15 22:05:33 137 1

原创 结构体内存分析

1. 什么是内存对齐看下面的小程序,理论上,int占4 byte,char占一个1 byte,那么将它们放到一个结构体中应该占4+1=5byte,但是实际上,通过运行程序得到的结果是8 byte,这就是内存对齐所导致的。struct Struct { int a; // 4 char b; // 1}struct4;NSLog(@"%lu",sizeof(struct4)); // 输出为 8计算机中内存空间都是按照 byte 划分的,从理论上讲似乎对任何类型的变量的访问可以

2021-06-09 14:43:17 521 1

原创 OC对象alloc分析

首先我们先看下alloc创建对象的一个整体流程图:1. 如何分析 alloc方法的执行流程1.1 通过符号断点分析首先我们在alloc方法调用的地方打上断点,待程序运行到改行时,按住 ctrl键,同时数遍点击 xcode底部的 Debug窗口的 step into即可进入。具体方法如下图所示:注意:一定要在程序运行到alloc方法的时候,在enable符号断点,否者程序运行时创建的类,会反复hit这个符号断点1.2 直接阅读汇编代码通过设置Always Show Disassembly阅读程

2021-06-06 01:30:43 221 1

转载 更新自己的cocoapods库

更新自己的cocoapods库修改XXXX.podspec文件中s.version的内容打tag,跟podspec文件中的s.version一致上传到Git,将包含配置好的 .podspec, 项目提交 Git验证.podspec文件pod spec lint xxxx.podspec --verbose发布pod trunk push xxxx.podspec...

2019-12-05 14:52:08 169

转载 欢迎使用CSDN-markdown编辑器

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2016-03-15 08:40:49 238

iOS13.2Device Support.zip

因为Xcode11.2.1会因为UITextView产生崩溃,大家可以使用Xcode11.2 然后配合此文件在iOS13.2的设备上进行真机调试 使用方法: 1.下载解压 2.关闭xcode 3.将文件复制到 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/ 4.重启xcode

2019-11-13

iOS13.1 device support 模拟器调试包

使用方法: 1.下载解压 2.关闭xcode 3.将文件复制到 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/ 4.重启xcode

2019-09-03

13.0模拟器调试包.zip

iOS13.0 Xcode11 iOS13.0模拟器调试包iOS13.0 使用方法:解压完,直接复制到 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport 目录下 iiOS13.0模拟器专用包 今天刚更新的 模拟器专用 要的拿去

2019-09-03

12.4 (16G73).zip

12.4 (16G73) Xcode10.3 12.4 (16G73)模拟器调试包 12.4 (16G73)使用方法:解压完,直接复制到 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport 目录下 12.4 (16G73)模拟器专用包 今天刚更新的 模拟器专用 要的拿去

2019-09-03

Swifter Tips 2.zip

*swift4**“说到这里,可以谈谈这本《Swifter - Swift 必备 tips》的写作目的了。很多 Swift 的学习者 -- 包括新接触 Cocoa/Cocoa Touch 开发的朋友,以及之前就使用 Objective-C 的朋友 -- 所共同面临的一个问题是,入门以后应该如何进一步提高。也许你也有过这样的感受:在阅读完 Apple 的教程后,觉得自己已经学会了 Swift 的语法和使用方式,你满怀信心地打开 Xcode,新建了一个 Swift 项目,想写点什么,却发现实际上满不是那么回事。你需要联想 Optional 应该在什么时候使用,你可能发现本已熟知 API 突然不太确定要怎么表达,你可能遇到怎么也编译不了的问题但却不知如何改正。这些 现象都非常正常,因为教程是为了展示某个语法点而写的,而几乎不涉及实际项目中应该如何使用的范例。本书的目的就是为广大[…]” 摘录来自: 王巍 (onevcat). “Swifter - Swift 必备 Tips (第四版)。” iBooks.

2019-09-03

12.1 (16B91) Xcode10.1 12.1模拟器调试包iOS12

12.1 (16A366) Xcode10 12.1模拟器调试包iOS12.1 使用方法:解压完,直接复制到 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport 目录下 iOS12.1模拟器专用包 今天刚更新的 模拟器专用 要的拿去

2018-11-01

12.0 (16A366) Xcode10 12.0模拟器调试包iOS12

使用方法:解压完,直接复制到 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport 目录下 iOS12模拟器专用包 今天刚更新的 模拟器专用 要的拿去

2018-09-18

SWIFTER-100个Swift必备Tips(第四版)(epub+pdf+playground)

**swift4**“说到这里,可以谈谈这本《Swifter - Swift 必备 tips》的写作目的了。很多 Swift 的学习者 -- 包括新接触 Cocoa/Cocoa Touch 开发的朋友,以及之前就使用 Objective-C 的朋友 -- 所共同面临的一个问题是,入门以后应该如何进一步提高。也许你也有过这样的感受:在阅读完 Apple 的教程后,觉得自己已经学会了 Swift 的语法和使用方式,你满怀信心地打开 Xcode,新建了一个 Swift 项目,想写点什么,却发现实际上满不是那么回事。你需要联想 Optional 应该在什么时候使用,你可能发现本已熟知 API 突然不太确定要怎么表达,你可能遇到怎么也编译不了的问题但却不知如何改正。这些现象都非常正常,因为教程是为了展示某个语法点而写的,而几乎不涉及实际项目中应该如何使用的范例。本书的目的就是为广大[…]” 摘录来自: 王巍 (onevcat). “Swifter - Swift 必备 Tips (第四版)。” iBooks.

2018-08-23

传智如意大师 oc语言疯狂讲义(下)

传智如意大师ios开发视频的配套资料 好了好久才找到

2016-01-03

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除