LoginSignup
3
2

More than 5 years have passed since last update.

【知らなかった…】Objective-Cでプロパティ名の先頭につけてはいけない単語

Last updated at Posted at 2016-07-27

プロパティ名の先頭に「new」はダメ

初めて遭遇したエラーでした。

property's synthesized getter follows Cocoa naming convention
for returning 'owned' objects

Cocoaってついてるし、裏側の話だと思ったけど、naming conventionって書いてあるから、
「名付けの習慣」とでも直訳するんでしょうか。 → 「命名規則」ですね!

プロパティを定義することで、ゲッターメソッド、セッターメソッドも自動で作られているようです。
そのため、newやcopyなどは自身のオブジェクトを返すためのメソッドとして

その他

先頭につけてはいけないワードが他にも有るようです。

  • new
  • alloc
  • copy
  • mutableCopy
  • init

いままで意識していませんでしたが、言語ごとの予約語、命名規則などは、
予め、知識として入れておかねばなりませんね……(汗)

参考:
http://tsukaayapontan.web.fc2.com/doc/xcode/objc/starting009.html

補足

ちょっとまだ読んでいる途中だけど……。
@propertyの後ろで指定しているカッコの中は、ARCのためだけと思っていたら、それだけではなかったのね。なるほどー……。
http://www.ecoop.net/memo/archives/objective-c-property-basics.html

3
2
6

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2