一、指针
① 指针类型
- Swift 中的指针分为两类:
- typed pointer 指定数据类型指针,即 UnsafePointer,其中 T 表示泛型;
- raw pointer 未指定数据类型的指针(原生指针) ,即 UnsafeRawPointer。
- Swift 与 OC 指针对比如下:
Swift | OC | 说明 |
---|---|---|
unsafePointer | const T * | 指针及所指向的内容都不可变 |
unsafeMutablePointer | T * | 指针及其所指向的内存内容均可变 |
unsafeRawPointer | const void * | 指针指向未知类型 |
unsafeMutableRawPointer | void * | 指针指向未知类型 |
② 原生指针
- 什么是原生指针?
- 原生指针是指未指定数据类型的指针;
- 对于指针的内存管理是需要手动管理的;
- 指针在使用完需要手动释放。
- 有以下一段原生指针的使用代码,请问运行时会发生什么?
// 原生指针