我有一個靜態字典已被初始化和數據已被添加到它在一個不同的.m文件,現在在我的視圖控制器我需要該靜態字典。 字典實際上包含載體名稱作爲鍵和它們各自的數值作爲值,所以我想要做的是檢查手機屬於哪個載體,然後獲取相應的數字。 靜態字典已經形成的.m文件是Config.m,它有一個實際返回靜態字典的方法。不兼容的指針類型指定
+ (NSDictionary*) getMccMncToCodeDictionary
{
return mccMncLISDictionary;
}
我在我的ViewController所做的是: 「不兼容的指針類型分配給
Config* network_number = [[Config alloc] init];
network_number = [Config getMccMncToLISCodeDictionary];
NSLog(@"network number:::%@", network_number);
在我的控制檯它顯示
network number:::(null)
警告(黃錯誤)我得到的是」不兼容的指針類型在ViewController的代碼的第二行中分配給來自NSDictionary *'的'Config * _strong'
我initLISDictionary代碼:
- (void) initLISDictionary
{
NSString* MCC = @"520";
NSString* CAT3G = [NSString stringWithFormat:@"%@00",MCC];
NSString* AIS = [NSString stringWithFormat:@"%@01",MCC];
NSString* CAT_CDMA =[NSString stringWithFormat:@"%@02",MCC];
NSString* TOT3G = [NSString stringWithFormat:@"%@15",MCC];
NSString* DTAC = [NSString stringWithFormat:@"%@18",MCC];
NSString* AIS_GSM_1800 = [NSString stringWithFormat:@"%@23",MCC];
NSString* TRUE_MOVE_H = [NSString stringWithFormat:@"%@88",MCC];
NSString* TRUE_MOVE = [NSString stringWithFormat:@"%@99",MCC];
mccMncLISCodeDictionary = [NSMutableDictionary dictionary];
[mccMncLISCodeDictionary setValue:[NSNumber numberWithInt:2] forKey:CAT3G];
[mccMncLISCodeDictionary setValue:[NSNumber numberWithInt:1] forKey:AIS];
[mccMncLISCodeDictionary setValue:[NSNumber numberWithInt:2] forKey:CAT_CDMA];
[mccMncLISCodeDictionary setValue:[NSNumber numberWithInt:4] forKey:TOT3G];
[mccMncLISCodeDictionary setValue:[NSNumber numberWithInt:3] forKey:DTAC];
[mccMncLISCodeDictionary setValue:[NSNumber numberWithInt:1] forKey:AIS_GSM_1800];
[mccMncLISCodeDictionary setValue:[NSNumber numberWithInt:5] forKey:TRUE_MOVE];
[mccMncLISCodeDictionary setValue:[NSNumber numberWithInt:5] forKey:TRUE_MOVE_H];
}
此代碼甚至沒有任何意義。 – Sulthan 2013-03-15 17:59:14
顯示完整的課程代碼 – 2013-03-15 18:33:00
完整的課程代碼與整個config.m中的一樣? – nupac 2013-03-15 18:39:40