NSMutableDictionary のキーを作成する必要があります。理想的なキーは、ポインターと整数の合併です。
これは、ポインター NSValue *key = [NSValue valueWithPointer:somePointer]; に対してのみ機能します。
somePointer + someInt を加算して、結果からキーを作成するにはどうすればよいですか?
私はこれを行います:
NSObject *p = <object>
int n = 0xdeadbeef;
NSValue *v = [NSValue valueWithPointer:(void *)((uint32_t )p + n)];
NSLog(@"p = %p n = %x v = %@",p,n,v);
ポインタは、サイズがプラットフォーム (通常は 32 または 64 ビット) に依存する整数型であり、適切なキャストを使用して他の整数型に追加できます。長さがvoidポインターの長さ以上の型でキャストするようにしてください。これにより、ポインターが切り捨てられないようになります。