Swift

Swift Day13 对于 String 的内存结构体探索

2020-12-13  本文已影响0人  望穿秋水小作坊
1. 从编码到启动 app 的过程?(源码→可执行文件→内存)这三个点回答
过程
2. 思考下图中的 Swift.String.init() 方法是存放在哪里?(Mach-O 还是 动态库)
示例代码
3. 思考:Swift.String.init() 这样的官方方法调用,我们在使用汇编跟进去的时候,经常会看到 dyld_stub_binder 函数,这个函数是干什么的呢?
dyld_stub_binder
4. 思考如何侧面证明上面对 dyld_stub_binder 说法呢?
两个Swift.String.init()

-上图中有两个Swift.String.init(),如果汇编跟进去,发现只有第一个会调用 dyld_stub_binder

5. 最终可以得到,对于 String 字符串,会出现三个区域(数据区、常量区、堆区),分别说明怎么样的 String 会出现在对应区域?
字符串存放规律总结
上一篇 下一篇

猜你喜欢

热点阅读