recherche

Maison  >  Questions et réponses  >  le corps du texte

objective-c - objective c如何new一个对象?

这里我是指不使用框架,纯粹的objective-c语法是如何新建一个对象的?

我在网上查了许多资料,都是用NSObject的alloc后再init的方法创建一个对象
难道objective c这个语言要新建对象还必须依赖某个框架或者某个父类的存在?这不合逻辑啊

PHP中文网PHP中文网2769 Il y a quelques jours733

répondre à tous(3)je répondrai

  • 大家讲道理

    大家讲道理2017-04-21 10:59:52

    pour class_createInstance
    官方文档里内容:
    Crée une instance d'une classe, allouant de la mémoire pour la classe dans la zone mémoire malloc par défaut.

    id class_createInstance(Class cls, size_t extraBytes)
    Paramètres
    cls
    La classe à laquelle vous souhaitez attribuer une instance.
    octets supplémentaires
    Entier indiquant le nombre d’octets supplémentaires à allouer. Les octets supplémentaires peuvent être utilisés pour stocker des variables d'instance supplémentaires au-delà de celles définies dans la définition de classe.
    Valeur de retour
    Une instance de la classe cls.

    Déclaré dans
    runtime.h

    参考资料
    http://developer.apple.com/library/ma...

    répondre
    0
  • 巴扎黑

    巴扎黑2017-04-21 10:59:52

    obj-c a deux façons de créer des objets

    • Initialisation, appelez d'abord la méthode alloc pour demander de la mémoire, puis appelez la méthode init pour créer l'objet.
    • Méthode de construction, appelez directement la méthode de construction statique pour créer l'objet. Cette méthode n’est en fait qu’un wrapper pour l’initialisation.

    répondre
    0
  • 天蓬老师

    天蓬老师2017-04-21 10:59:52

    J'apprends actuellement le développement sur iPhone. Le livre dit qu'Objective-C sépare les étapes d'instanciation d'une classe
    . alloc est utilisé pour allouer de l'espace mémoire, puis initialisé avec init ou d'autres méthodes, telles que :

    myArray = [[NSArray alloc] initWithObjects:@"张二",@"张三", nil];

    répondre
    0
  • Annulerrépondre