中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

堆和棧的區別 -- 本次存貯哪幾種方式

發布時間:2020-06-19 15:59:21 來源:網絡 閱讀:632 作者:Im劉亞芳 欄目:開發技術

棧區(stack) --由編譯器自動分配釋放,存放函數的參數值,局部變量的值。

堆區 (heap) ---一般有程序員分配釋放。

全局區(靜態區)(static) --全局變量和靜態變量,程序結束后由系統釋放。

文字常量區 -- 常量字符串存放在這里,程序結束后由系統釋放。

程序代碼區 ---存在行數體的二進制文件。


棧:只要棧的剩余空間大于所申請空間,系統將為程序提供內存,否則將報異常提示棧溢出。

堆:首先應該知道操作系統有一個記錄空閑內存地址的鏈表,當系統收到程序的申請時,會遍歷該鏈表,尋找第一個空間大于所申請空間的堆結點,然后將該結點從空閑結點鏈表中刪除,并將該結點的空間分配給程序,另外,對于大多數系統,會在這塊內存空間中的首地址處記錄本次分配的大小,這樣,代碼中的delete語句才能正確的釋放本內存空間。另外,由于找到的堆結點的大小不一定正好等于申請的大小,系統會自動的將多余的那部分重新放入空閑鏈表中。


1、          iOS本地數據存儲都有哪幾種方式?iOS如何實現復雜對象的存儲?

1、        NSKeyedArchiver(歸檔)采用歸檔的形式來保存數據,該數據對象需要遵守NSCoding協議,并且該對象對應的類必須提供encodeWithCoder:和initWithCoder:方法。

2、        NSUserDefaults:用來保存應用程序設置和屬性、用戶保存的數據。用戶再次打開程序或開機后這些數據仍然存在。NSUserDefaults可以存儲的數據類型包括:NSData、NSString、NSNumber、NSDate、NSArray、NSDictionary。

3、        Write寫入方式:永久保存在磁盤中。

4、        SQLite(FMDB、CoreData)

NSCoding +NSKeyedArchiver實現復雜對象的存儲。





向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

浦东新区| 安多县| 利川市| 磐安县| 安国市| 齐齐哈尔市| 通榆县| 简阳市| 开封县| 太谷县| 长顺县| 溧水县| 古丈县| 特克斯县| 梓潼县| 文安县| 新干县| 天全县| 忻州市| 洞头县| 德州市| 双流县| 凭祥市| 天柱县| 昂仁县| 略阳县| 八宿县| 简阳市| 田阳县| 平顶山市| 静安区| 正镶白旗| 东丰县| 明星| 呈贡县| 道孚县| 沂水县| 高尔夫| 永顺县| 安平县| 海南省|