内存分配与初始化

本文探讨了Objective-C中对象内存分配与初始化的过程。在Objective-C中,内存分配通过类方法`alloc`完成,而初始化是通过`init`方法进行,两者分开执行。`alloc`会为实例变量除`isa`外的其他部分置零,`isa`指向对象的类。初始化方法通常以`init`开头,遵循特定的命名规范,并确保正确处理错误,包括参数有效性、父类初始化失败以及特有实例变量初始化失败的情况。
摘要由CSDN通过智能技术生成

                      内存分配与初始化

1.在c++中,一个对象的空间分配和初始化是混合在一起的,是通过调用构造函数来完成。而在ObjC中,分配空间和初始化是两个不同的方法。分配空间是通过类方法alloc处理,其中也会对所有的实例变量初始化,但是除了从NSObject继承的指针isa(is-a)之外的所有实例变量均被置为0(在运行时,isa的值可以标识新创建对象的类型) 

备注:

isa:(在跟类中定义,并且所有类和对象都会继承的一个特殊的实例变量,isa变量用于在运行时识别对象所述的类。  每个类中都有一个super class指针,该指针指向自己的父类。对象中有一个isa指针,该指针指向调用该对象的类

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值