|
|
Log In | Not a Member? |
Contact ADC |
| < 前ページ次ページ > |
この付録では、Cocoa開発環境用に実装されている、C言語の拡張としてのObjective-Cの正式な構文について説明します。この付録はBrian W. KernighanとDennis M. Ritchieによる 『The C Programming Language』 (1988年、第2版。Prentice Hall出版。邦題『プログラミング言語C』)の付録Aに記載されているANSI標準準拠のCの構文への追加であり、同書と合わせて読む必要があります。
Objective-C拡張では、クラスインターフェイスなど、新しいシンボルがいくつか追加されていますが、標準Cの構文で説明されているシンボル(関数定義など)も利用しています。ここで取り上げていて説明していないシンボルは、下記のとおりです。
複合文
定数
宣言
宣言リスト
列挙指定子
式
関数定義
識別子
パラメータ型リスト
文字列
構造体宣言リスト
構造体・共用体
typedef名
型名
これらのうち、識別子と文字列は未定義のターミナルシンボルです。Objective-Cは、固有の未定義のターミナルシンボルは追加しません。
次の2つの表記規則については、この付録では『The C Programming Language』で使われているものと異なります。
リテラルシンボルはcode fontという具合に特殊なフォントで示します。
オプションの要素は大括弧で囲みます。
上記以外は、この付録では『The C Programming Language』の表記規則に従います。構文の各パートは、シンボルとコロンを太字で、シンボルを拡張するための相互に排他的な候補のリストを示します。たとえば、次のようになります。
レシーバ:
式
クラス名
super
ただし、次のような例外があります。相互に排他的でない場合でも、クラス、カテゴリ、プロトコル、およびブロックの構成要素は、要素の順番を明確に示すために、別々の行にリストします。たとえば、次のようになります。
プロトコル宣言:
@protocol プロトコル名
[ プロトコル参照リスト ]
[ インターフェイス宣言リスト ]
@end
一般規則に対する例外は、各リストが@endで終わるか、シンボル名が“-block”で終わるため容易に認識できます。
Objective-C言語が標準C向けに定義された規則を変更しているエントリポイントは、次の6つです。
外部宣言
型指定子
型修飾子
プライマリ式
例外処理
同期
このため、この付録は、これらのポイントに対応する6つのセクションに分かれています。標準Cの構文における規則がObjective-C拡張によって変更されている箇所は、規則全体が変更後の形式で繰り返されています。
| < 前ページ次ページ > |
Last updated: 2007-10-31
|
Get information on Apple products.
Visit the Apple Store online or at retail locations. 1-800-MY-APPLE Copyright © 2007 Apple Inc. All rights reserved. | Terms of use | Privacy Notice |