recherche

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

objective-c - 在oc里面点号和中括号发送消息的区别

本来我以为在oc里面发送一个消息只能用中括号的

后来一个typo让我发现其实直接像c++那样用点号也是可以发送消息,只不过会多一个警告,内容看不太明白

很奇怪他说得并不是deprecated什么的,而是说这么用有副作用,不只看有谁能帮我解析一下这里说的副作用是什么意思

相关代码

// 申明
@property (weak, nonatomic) IBOutlet UITextField *textfield; 

// 运行代码
self.textfield.resignFirstResponder; //写成这样会出警告,但是能运行

[self.textfield resignFirstResponder]; // 按这样的标准写法就没事
PHP中文网PHP中文网2769 Il y a quelques jours478

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

  • 高洛峰

    高洛峰2017-04-21 10:59:14

    Cette ligne d'avertissement est comme ceci. Cela ne signifie pas qu'il y a des effets secondaires si vous faites cela, mais cela signifie que le getter est utilisé pour obtenir la valeur, et l'envoi de resignFirstResponder n'est pas un effet secondaire. recommandé d'utiliser le getter.
    Le .number est égal aux méthodes getter et setter sur les propriétés de @synthesize

    répondre
    0
  • 阿神

    阿神2017-04-21 10:59:14

    La traduction littérale est : la valeur de retour de l'attribut n'est pas utilisée.
    C'est à dire : devrait
    a =bc;
    Il n'est pas recommandé d'utiliser
    directement avant JC;
    Contrairement aux méthodes de classe, vous pouvez utiliser des méthodes comme celle-ci :
    o.method();

    répondre
    0
  • 黄舟

    黄舟2017-04-21 10:59:14

    J'ai appris que la méthode resignFirstResponder est généralement utilisée pour envoyer des messages.

    répondre
    0
  • Annulerrépondre