0

Objective-C がプログラム内のエンティティを識別する方法に関する情報を取得しようとしています。使用できる文字数など。Google で検索してみましたが、何も思いつきませんでした。Cベースのパーティだったのでネーミング・バインディング・スコープはCに準ずるのですか?どんな助けでも大歓迎です。これらのことについて話しているリンクがあれば、それも役に立ちます。ありがとうございます。

4

1 に答える 1

0

Objective-C は C と同じルールに従い、C にはないオブジェクト指向機能のためにいくつかの独自のルールを追加します。

C と同様に、変数名に使用できる文字数に厳密な制限はありません。

スコープと可視性のルールは C と同じですが、Objective-C オブジェクトはほとんど常にポインターを介してアクセスされます。また、オブジェクト自体の有効期間は参照カウントまたはガベージ コレクションのいずれかによって管理されます。 C++.

主な違いの 1 つは、インスタンス変数のスコープが、それらが属するインスタンスに限定され、外部の呼び出し元が,およびキーワードを使用して変数にアクセスできるかどうかを制御できることです。@public@protected@private

もう 1 つのちょっとした違いはブロックです。これらは、Apple が作成した C への非標準†</sup> の追加です。ブロックはその周囲の範囲をキャプチャし、ブロックが存在する限り物事を維持します。また、ブロックは通常、参照するオブジェクトを保持して、それらのオブジェクトが解放されないようにします。詳細については、Apple のブロック プログラミング ガイドを参照してください。

†</sup> Apple は標準化のためにブロックを提出しましたが、まだ実現していませんし、実際に実現することはないかもしれません。

于 2012-11-06T18:23:40.893 に答える