这里我是指不使用框架,纯粹的objective-c语法是如何新建一个对象的?
我在网上查了许多资料,都是用NSObject的alloc后再init的方法创建一个对象
难道objective c这个语言要新建对象还必须依赖某个框架或者某个父类的存在?这不合逻辑啊
大家讲道理2017-04-21 10:59:52
class_createInstanceを使用する
官方文档里内容:
クラスのインスタンスを作成し、デフォルトの malloc メモリ ゾーンでクラスにメモリを割り当てます。
id class_createInstance(クラス cls, size_t extraBytes)
パラメータ
cls
インスタンスを割り当てたいクラス。
余分なバイト
割り当てる追加バイト数を示す整数。追加のバイトは、クラス定義で定義されたものを超える追加のインスタンス変数を格納するために使用できます。
戻り値
クラス cls.
宣言されました
ランタイム.h
参考资料
http://developer.apple.com/library/ma...
巴扎黑2017-04-21 10:59:52
obj-c にはオブジェクトを作成する 2 つの方法があります
天蓬老师2017-04-21 10:59:52
私は現在 iPhone 開発を学んでいます。その本には、Objective-C がクラスのインスタンス化のステップを分離していると書かれています。
alloc はメモリ空間を割り当てるために使用され、その後、init または他のメソッド (次のような) で初期化されます:
リーリー