[解決済み] objective-cの@マークは何を表しているのですか?
質問
objective-cを学習しているのですが、@という記号によくぶつかります。これはさまざまなシナリオで使用されます。たとえば、文字列の先頭やアクセサメソッドを合成するために使用されます。
objective-cで@記号はどのような意味ですか?
どのように解決するのですか?
この
@
文字はCやC++の識別子には使われないので、他の言語のキーワードと衝突しない方法でObjective-C言語のキーワードを導入するために使用されます。 これにより、言語のquot;Objective"部分がCまたはC++部分と自由に混ざり合うことができます。
したがって、ごく少数の例外を除いて、いつでも
@
を見るときは、C や C++ のコンストラクトではなく、Objective-C のコンストラクトを見ていることになります。
主な例外は
id
,
Class
,
nil
そして
Nil
を持つことがあっても、一般に言語キーワードとして扱われます。
typedef
または
#define
を後ろにつけることができます。 例えば、コンパイラは実際には
id
を特別に扱い、宣言に適用するポインタ型変換ルールや、GC書き込みバリアを生成するかどうかの判断に使用します。
他の例外は
in
,
out
,
inout
,
oneway
,
byref
そして
bycopy
これらは分散オブジェクトをより効率的にするために、メソッドのパラメータと戻り値の型にストレージクラスのアノテーションとして使用されます。 (これらはランタイムから利用可能なメソッドシグネチャの一部となり、DOはそれを見てトランザクションの最適なシリアライズ方法を決定します)。 また
@property
宣言の中にも属性があります。
copy
,
retain
,
assign
,
readonly
,
readwrite
,
nonatomic
,
getter
そして
setter
の属性セクションの中だけで有効です。
@property
宣言の属性セクション内でのみ有効です。
関連
-
[解決済み】Objective-C。NULL、nil、@""の違いは何ですか?
-
[解決済み] Objective-CでNSStringsを連結するためのショートカット集
-
[解決済み] Objective-Cの定数
-
[解決済み] アトミック属性と非アトミック属性の違いは何ですか?
-
[解決済み] キーボードがあるときに、UITextFieldを編集開始時に上に移動させるには?
-
[解決済み] Objective-Cで、ある文字列が他の文字列を含んでいるかどうかを調べるにはどうすればよいですか?
-
[解決済み] Objective-Cのtypedef enumとは何ですか?
-
[解決済み] SwiftからObjective-Cのコードを呼び出すにはどうしたらいいですか?
-
[解決済み] Xcode 4でNSZombieEnabledを設定するにはどうすればよいですか?
-
[解決済み】なぜObjective-Cのファイルには.mという拡張子がついているのですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】何が原因か。switch文からこのcaseラベルにジャンプできない [重複]。
-
[解決済み] dispatch_after - GCD in Swift?
-
[解決済み] クラス 'test_coredataAppDelegate' の重複したインターフェイス宣言
-
[解決済み] カスタムメイドのフレームワークで「セレクタ 'Hello:'の既知のクラスメソッドがありません」というエラーが発生する。
-
[解決済み] synthesize vs @dynamic、その違いとは?
-
[解決済み] NSStringにパーセント記号を追加する方法
-
[解決済み】浮動小数点以下が2桁しか表示されないようにする
-
[解決済み】メインスレッドでタスクを実行するGCD
-
[解決済み】UITableViewからセパレータラインを削除する方法はありますか?
-
[解決済み】iOSでメールアドレスが有効であることを確認する【重複あり