Objective-C의 경험이 좋지 않습니다. 누군가 도와 줄 수 있으면 좋겠어요.NSMutableDictionary를 사용할 수 없습니다. (xcode)
주위에 다른 코드가 있지만이 문제를 단순화했다고 생각합니다. 내가 뭘하려고 저장하는 것입니다 이중 아래에있는 내 코드입니다, 열쇠 (의 NSNumber에 포장) : 이제이 인쇄
.H
@interface MyClass : something
{
MyMap* usemap;
}
@end
@interface MyMap : something
@property (atomic, strong) NSMutableDictionary* mmap;
@end
하는 .m
@implementation MyMap
@class MyClass;
NSMutableDictionary* mmap = [[NSMutableDictionary alloc] init];
@end
@implementation MyClass
MyMap* usemap = [MyMap alloc];
//-void { switch() { case x:
NSString* key = @"testkey";
NSNumber* value = [NSNumber numberWithDouble:1];
NSLog(@"Saving value: %@ to key: %@",value,key);
[usemap.mmap setObject:value forKey:key];
NSNumber* get = [usemap.mmap objectForKey:key];
NSLog(@"Saved value: %@ to key: %@",get,key);
:
Saving value: 1 to key: testkey
Saved value: (null) to key: testkey
무엇이 누락 되었습니까? 이중 숫자 '1'을 저장해야합니다.
'mmap'이 초기화되지 않았습니다. '@ implementation' 바로 아래에있는 코드는 의미가 없으며 실행되지 않습니다 (적어도 기대할 때). 코드를 이니셜 라이저 또는 일부 메서드에 추가하십시오. – werediver
나는 그것을 할당 한 후 - (void) 구조로 옮겼다. 그건 도움이되지 못했습니다 :/ – user2105624
오키! 고쳤다! : D 나는 self.mmap = [[NSMutableDictionary alloc] init];을 사용해야했습니다. alloc 후에 호출 된 void 함수 내에서. 자기가 없으면. 처음에는 효과가 없었습니다. – user2105624