iOS Tips 持續更新)

2021-07-04 13:07:15 字數 1325 閱讀 5821

foundation框架定義了兩個用於定義列舉型別的巨集,ns_enumns_options,他們的定義如下:

#define ns_enum(_type,_name) \

enum _name : _type _name; enum _name : _type

#define ns_options(_type,_name) \

enum _name : _type _name; enum _name : _type

從上面定義可以發現其實這兩個巨集定義是一致的,區別在於它們的用途,前者主要用於對列舉值沒什麼特殊要求的列舉型別,而後者經常用於定義可以彼此組合的選項列舉值,如下面例子:

typedef ns_enum (nsuinteger, jkorientation) ;

typedef ns_options (nsuinteger, jkinte***ceorientation) ;

歸檔的使用簡單易懂,是實現預快取的一種常用方式,我按照如下方式實現預快取:

+(nsstring*)archivepath:(nsstring*)archivename userspecific:(bool)isuserspecific

else

return archivepath;

}+(nsdictionary*)getcacheddataof:(nsstring*)cachename userspecific:(bool)isuserspecific

+(void)cachedata:(id)data forpagename:(nsstring*)cachename userspecific:(bool)isuserspecific;

else

}

可是天公不作美啊,上述**總是輸出「** archive failed」,然後就用模擬器先除錯一把,斷點到archiverootobject,檢視獲得的archivepath變數,變數列印如下:

+(nsstring*)archivepath:(nsstring*)archivename userspecific:(bool)isuserspecific

nsstring *tmp = nil;

if (isuserspecific) else

return archivepath;

}

這樣就歐了。

gpu 持續更新

1.從記憶體向視訊記憶體傳輸資料 a.pci peripheral component interconnect外部裝置互聯 匯流排,pci的傳輸速率為100mb s b.agp accelerated graphic port高速圖形埠 匯流排,此匯流排為專用的高速匯流排,可以快速的儲存在系統快取...

問題 持續更新

第三方庫 fno objc arc 深拷貝 淺拷貝 copy,mutablecopy kvc mvc 愛限免中星星個數的問題 首先必須先清空 asi封裝的兩個問題 block 聯想 c語言的函式指標 函式指標的宣告 首先要區分好變數名和資料型別 拷貝 加括號 換名 加星號。通過指標呼叫函式 指標名 ...

AOP(持續更新)

面向切面程式設計aop 完善spring的依賴注入 di 在spring中分為兩方面 提供宣告式事務管理 spring支援使用者自定義的切面,aop是對物件導向程式設計 oop 的補充,oop將程式分解成各個層次的物件,aop將程式執行過程分解成各個切面。aop從程式執行角度考慮程式的結構,提取業務...