クラスメンバを宣言したらメンバを実装しなくてはなりません。
ここがJavaやC#との大きな違いです。
C++
1 | void Hello::SayHello( void ) |
2 | { |
3 | puts( "Hello World" ); |
4 | } |
Objective-C
1 | @implementation Hello |
2 | -(void)SayHello |
3 | { |
4 | puts( "Hello World" ); |
5 | } |
6 | @end |
両者共に基本形はCですが大きな違いがあります。
C++の場合、"戻値の型 クラス名称::メンバ"の形式で記述します。
この"::"が非常に美しくありません。
一体何なのでしょうか?
何故に"::"を選んだのか私には全く理解出来ません。
4個の"黒点"が均等に並んでいます。
:: :: :: :: :: :: :: :: :: :: :: ::
:: :: :: :: :: :: :: :: :: :: :: ::
:: :: :: :: :: :: :: :: :: :: :: ::
:: :: :: :: :: :: :: :: :: :: :: ::
:: :: :: :: :: :: :: :: :: :: :: ::
:: :: :: :: :: :: :: :: :: :: :: ::
:: :: :: :: :: :: :: :: :: :: :: ::
:: :: :: :: :: :: :: :: :: :: :: ::
:: :: :: :: :: :: :: :: :: :: :: ::
殺戮凶器に昆虫の大群です。
不気味極まりないですね。
考えているうちに寒気がしてきました。
Objective-Cの場合は"@implementation~@end"句で天地を囲みます
囲まれた中にメンバを記述して行くのですが、"::"のような薄気味悪い記号はありません。
-(戻値の型) メンバ名:(型) 引数:(型) 引数・・・
この形状で実装を行います。
"-("この形が重要です。
丁度、航空機の主翼の断面図のような"形"になります
非常に滑らかでスピーディーかつシャープな印象を受けますね。
先頭の"-"を"+"にすると、C++で言うところのスタティックメンバと同じ役割を果たします。
シャープな内容物を"@implementation~@end"が優しく包み込み、全体を柔らかな印象にしてくれます。
このように美しい外見をしているので、Objective-Cでのプログラミングは目に優しく
長時間のコーディングでも目に疲れを覚える事はありません。
もっとも、エディタの背景色を目に優しい色にしておかなければ目は疲れてしまいますが。