私はObjective-Cランタイムタイプエンコーディング文字列に関するAppleの記事を読ん でおり、一部のメソッドのタイプ文字列には数値が含まれています。
数字はv12@0:4@8どういう意味ですか?
私はObjective-Cランタイムタイプエンコーディング文字列に関するAppleの記事を読ん でおり、一部のメソッドのタイプ文字列には数値が含まれています。
数字はv12@0:4@8どういう意味ですか?
これは、次のようなセッターメソッドのエンコーディングのように見えます。
- (void) setSomething:(id) anObject
それを分解するには:
vボイドリターンタイプを意味します12引数フレームのサイズ(12バイト)を意味します@0引数フレームのバイトオフセット0にObjective-Cオブジェクトタイプがあることを意味します(これはself各Objective-Cメソッドの暗黙的なオブジェクトです):4これは、バイトオフセット4にセレクターがあることを意味します(これは、_cmdメソッドを呼び出すために使用されたセレクターである、すべてのメソッドに暗黙的に含まれています)。@8バイトオフセット8に別のObjective-Cオブジェクトタイプがあることを意味します。