定数(#define,const)
定数とは固定値を格納する箱です。
変数と違うところは、変数は何度でも値を代入(変更)出来るのに対し、定数には一度だけしか値を代入することができません.
プログラミングでは、予め決まった値を使用して処理を行ったり、その値をコード内で何度も使用することがあります。
このようなときに便利なのがこの定数と呼ばれるものです。
定数の作り方
Objective-Cで定数を定義する方法を紹介します。
「#define」を使用して定義すると、マクロのような使い方が出来ます。
// HIT_POINT という名前で50の値を定義する
#define HIT_POINT 50
// SITY_NAME という名前で"東京"という値を定義する
#define SITY_NAME = @"東京"
▶ ワンポイント
define構文の最後にセミコロンを付けると、コンパイルエラーなどの原因となりますので基本的には付けないそうです。
「const」修飾子を使用して定数を定義する方法を紹介します。
『const』って?
constを定義することにより、変更できない値にすることができます。つまり定数となるわけですね。
また、defineと違い、型を定義できることが特徴のひとつとなっています。
以下、例文をあげてみます。
// kNumという名前で10を定義
const int kNum 10;
// kStrという名前で「あいふぉん」を定義
NSString * const kStr = @"あいふぉん";
『const』をグローバルな定数にしてみる
定数をグローバルなものとし、他ファイルからも参照できるようにすることが出来ます。
それには『extern』を用いて定義してやります。
方法としては、ヘッダーファイル内にて、『const』で定義したものを『extern』宣言してあげることで実現できます。
>> ヘッダーファイル(.h)
extern const int kNum 10;
extern NSString * const kStr;
>> 実装ファイル(.m)
const int kNum 10;
NSString * const kStr = @"あいふぉん";
定数の命名規則
定数を宣言するうえで、変数と区別する為に、別途ルールを設けることがよくあります。
Objective-C (Cocoa) では以下のような命名規則があるようです。
変数は基本小文字ですので、違いがわかりやすいですね。
どうやらドイツ語の「konstant」が由来だそうです。
一単語ずつ区切った方が見やすいっていうのもありますね
最終更新:2014年09月18日 18:40