Objective-C 2.0をはじめる

現在のまとめ

  1. Objective-C 2.0のことをObjective-C++と表記することもあるみたい
  2. 宣言部と実装部に分かれている
  3. メソッド参照がメッセージ送信になっていて記述が独特
  4. 「#」で始まるコンパイルの前処理の指示を「プリプロセッサ命令」と呼ぶらしい
  5. NSObjectクラスがルートクラスとなる
  6. NSObjectクラスはFoundationフレームワークの中に用意されている
  7. id型の場合、「*」(アスタリスク)でポインタであることを明示する必要はないらしい。
  8. allocとinitはNSObjectに定義されている
  9. Foundationフレームワークは実行時に読み込み
  10. コンパイル実行に失敗するとファイルは作成されない
  11. 「 : スーパークラス名」の部分は、宣言部(@interface)で記述されていれば、実装部(@implementation)では省略してもOK
  12. オブジェクトでやり取りするために、int型変数をオブジェクト型にラップして渡すことが結構行われるらしい
  13. interfaceの引数を「仮引数」というらしい
  14. メソッドの宣言で型を省略するとid型とみなされる
  15. 実装部(implementation)ではスーパークラスインスタンス変数は記述しない。宣言したメソッドの定義は必須
  16. オブジェクトの無効値はnil
  17. 関数呼び出しの方がメソッド呼び出しよりも比較的高速に動作するが、よほどでない限りはメソッド呼び出しでよい
  18. initメソッドはid型を返すらしい