iOS 面试真题及详细答案(初高中级全套).docx

iOS 面试真题及详细答案(初高中级全套).docx

iOS面试真题及详细答案(初高中级全套)

一、Objective-C基础核心题

1、简述OC中堆和栈的区别,以及对象存储位置

参考答案:

栈:系统自动分配、自动释放,内存空间小、读写速度快。主要存储局部变量、函数参数、基本数据类型变量。栈内存由系统管理,函数执行结束后立即回收,不存在内存泄漏问题。

堆:手动管理(MRC)/自动托管(ARC),内存空间大、读写速度慢。所有OC对象都存储在堆内存中,指针变量存储在栈上,通过栈指针指向堆内存的对象。堆内存需要开发者把控引用计数,处理不当会产生内存泄漏、野指针问题。

补充:全局变量、静态变量存储在静态区,程序运行期间全程存在,程序结束后系

文档评论(0)

1亿VIP精品文档

相关文档