問題タブ [objective-c-runtime]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
5777 参照

objective-c - object_getInstanceVariableはfloat、int、boolで機能しますが、doubleでは機能しませんか?

私はここでobject_getInstanceVariable仕事をしなければなりませんが、それはフロート、ブール、イントでのみ機能し、ダブルでは機能しないようです。私は何か間違ったことをしているのではないかと思いますが、私はこれと輪になって行ってきました。

動作し、myFloatValue = 2.123

でもやってみると

取得しmyDoubleValue = 0ます。関数の前に設定しようとするとmyDoubleValue、たとえば。double myDoubleValue = 1.2fobject_getInstanceVariable呼び出し後に読んだときの値は変わりません。myIntValue上記の関数の前に他の値に設定するとgetinstancevar、2が返されます。変更されました。

それから私は試しました

私がそうするならば、私はivar_getName(tmpIvar)「someDouble」を手に入れます、しかしmyDoubuleValue = 0それでも!それから私は試しivar_getTypeEncoding(tmpIvar)てみて、あるべき「d」を取得します。

要約するとtypeEncoding = float、が機能する場合、それがdoubleの場合、結果は設定されませんが、変数を正しく読み取り、戻り値(Ivar)も正しいです。

私は私が見ることができない基本的な間違ったことをしているに違いないので、誰かがそれを指摘してくれれば幸いです。

0 投票する
3 に答える
964 参照

objective-c-runtime - メソッドからセレクターを直接取得しますか?NSSelectorFromMethod([[SomeClass someObject]メソッド])?

出来ますか?

0 投票する
2 に答える
5877 参照

objective-c - 任意のクラスのクラス メソッドのリストを取得する

特定のクラスのクラスメソッドのリストを取得するにはどうすればよいですか? class_copyMethodListで宣言されている関数を使用してみました<objc/runtime.h>が、それはインスタンス メソッドしか提供していません。クラスメソッドのメソッドを提供する関数も見つけましたが、最初にメソッドへのセレクターがある場合のみです(class_getClassMethod)。

何か案は?

ありがとう、

デイブ

0 投票する
2 に答える
304 参照

iphone - ユーザーの姓と名を発見していますか?

iPhone ユーザーの姓名をプログラムで検出しようとしています。これはまったく可能ですか?これを呼び出す...

..ああ。アドレス帳を反復処理すると、アドレス帳のすべてのレコードが見つかりますが、デバイスの所有者とそれ以外の人 (私にはわかります) は区別されません。

Mac デスクトップのアドレス帳では所有者のアイコンが左下に「me」のオーバーレイで飾られていることを考えると、そのような情報が iPhone バージョンで利用できることを期待しています。

マーティン。

0 投票する
2 に答える
5953 参照

objective-c - Objective-C ブロックからの IMP の作成

IMP私が理解している限り、Objective-Cの型は関数ポインターを表します。IMPブロックポインタから作成する方法はありますか? アイデアをありがとう。

0 投票する
1 に答える
384 参照

iphone - forwardInvocationに送信された引数の出力:NSProxyのサブクラス

セレクターと引数を出力するだけで、プロキシオブジェクトに送信されたメッセージをインターセプトしたいと思います。プロキシがそれらを実装しておらず、ターゲットオブジェクトがない場合でも。助けてください。私はいくつかのオプションとAppleドキュメントを見てきましたが、それらはあなたがすでにターゲットオブジェクトを知っていることを前提としています。私はこれをメモリの問題なしにきれいにやりたいと思っています。

どうもどうも

0 投票する
2 に答える
1298 参照

objective-c - class_getClassVariable()は何をしますか?

インスタンス変数がクラスのインスタンスに属している場合、クラス変数はメタクラスのインスタンスに属していると思います。しかし、Objective-Cメタクラスでの私の経験から、これはありそうもないことがわかります。

class_getClassVariableとは対照的に何が行われるclass_getInstanceVariableのか、なぜclass_setClassVariableランタイムにがないのか疑問に思っています。

0 投票する
2 に答える
1197 参照

c - Objective-C でのアスタリスクの使用

Objective-C でのアスタリスクの使用について質問がありました。明確にするために: 私はポインターとは何か、手続き型 C のすべてを理解しています。

1) すべての (への参照) Objective-C オブジェクト ポインターはなぜですか? 単純な変数ではないのはなぜですか? (つまり、NSArray 配列 = [[NSArray alloc] init];)

2) メソッドを呼び出すときにアスタリスクを省略するのはなぜですか?

ありがとう!

0 投票する
4 に答える
1734 参照

objective-c - Objective-C でのアスタリスクの使用: 関連する質問

これに関連するいくつかの質問がありました: Objective-C でのアスタリスクの使用法

NSArray 配列。ローカルスコープでは、スタックに「割り当てられた」オブジェクトになります。NSArray *配列; 通常はヒープから割り当てられた、メモリの塊に支えられたオブジェクトを示します。

スタックとヒープに何かが割り当てられていることをどのように知ることができますか? すべてのローカル変数はスタック上にあり、すべてのポインターはヒープ上にありますか?

オブジェクトへのポインターを逆参照していないため、オブジェクトへのポインターはメソッド実装自体の中で重要です。あなたが言う時...

0 投票する
4 に答える
1497 参照

objective-c - Objective-C プロパティの割り当ては、割り当てられた値を返しますか?

私は次のものを持っているとしましょう:

それで:

の戻り値を見ると、割り当てが何も返さないように見えるため、-[MyClass setFoobar:]この行が を出力すると仮定するかもしれません。I set 'foobar' to ''

ただし、ありがたいことに、この割り当ては期待どおりに機能し、コードはI set 'foobar' to 'BAZ!'. 残念ながら、呼び出されたセッターの戻り値は、割り当てがそれに割り当てられた値を返すという事実に反するため、これは矛盾しているように感じます。最初mcInst.foobar = @"BAZ!";は、ブロックの代わりに 2 つの呼び出しを行っていると考えました。最初はセッター、次に戻り値を収集するためのゲッターです。ただし、setter メソッドと getter メソッドをNSLog呼び出しでインストルメント化すると、そうではないことが証明されます。