內存管理1retain和release

Student.h:

#import <Foundation/Foundation.h>   @interface Student : NSObject  @property int age;  //默認會生成一個_age屬性  @end

Student.m:

#import "Student.h"  @implementation Student //@synthesize age=_age;//xcode4.5中可以不使用synthesise方法,直接在頭文件中使用property方法即可 //如果只在m文件中定義而沒有在h文件中申明的方法屬于privte方法,如果不寫類型一般默認是protected方法 -(void)dealloc{  //構造父類的回收方法     NSLog(@"%@被銷毀了",self);     NSLog(@"_age %i",_age);     [super dealloc];//一定要調用super的dealloc方法,最好放在最后面調用 } @end

main:

#import <Foundation/Foundation.h> #import "Student.h"  int main(int argc, const char * argv[]) {      @autoreleasepool {         Student *stu=[[[Student alloc] init] autorelease];  //alloc方法計數器為1         [stu retain];//調用一次retain方法計數器加1         NSLog(@"retaincount is %zi",[stu retainCount]);         [stu release];//調用一次release方法計數器減1         NSLog(@"retaincount is %zi",[stu retainCount]);         stu.age=10;         [stu retain];//add 1         //這兒retainCount返回的是Unsigned long 無符號長整形 %z代表無符號         NSLog(@"retaincount is %zi",[stu retainCount]);         NSLog(@"Student age is %i",[stu age]);         [stu release];  //計數器為0就調用dealloc方法     }     return 0; } 

結果:

2013-08-02 14:57:25.342?內存管理1retainrelease[788:303] retaincount is 2

2013-08-02 14:57:25.344?內存管理1retainrelease[788:303] retaincount is 1

2013-08-02 14:57:25.344?內存管理1retainrelease[788:303] retaincount is 2

2013-08-02 14:57:25.344?內存管理1retainrelease[788:303] Student age is 10

2013-08-02 14:57:25.345?內存管理1retainrelease[788:303] <Student: 0x100109a90>被銷毀了

2013-08-02 14:57:25.345?內存管理1retainrelease[788:303] _age 10























本文轉自蓬萊仙羽51CTO博客,原文鏈接:http://blog.51cto.com/dingxiaowei/1366576,如需轉載請自行聯系原作者

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/256610.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/256610.shtml
英文地址,請注明出處:http://en.pswp.cn/news/256610.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

目標檢測的圖像特征提取之(一)Hog特征提取

Hog特征實質是&#xff1a;梯度的統計信息,即針對邊緣作特征提取 意義&#xff1a;目標的表象和形狀 轉載于zouxy09大神的文章&#xff0c;加上自己些微的理解和應用&#xff01; http://blog.csdn.net/zouxy09/article/details/7929348/ 上述基本講清楚了&#xff0c;其實…

redis類型[string 、list 、 set 、sorted set 、hash]

1. Keys redis本質上一個key-value db&#xff0c;所以我們首先來看看他的key. 首先key也是字符串類型&#xff0c;但是key中不能包括邊界字符&#xff1b;由于key不是binary safe的字符串&#xff0c;所以像"my key"和"mykey\n"這樣包含空格和換行的key是…

matlab simulink筆記02——延遲模塊delay與單位延遲模塊unit delay

延遲模塊 單位延遲模塊 延遲模塊具有復位功能,當滿足復位條件時會進行復位操作,即輸出的值會恢復到初始值,而單位延遲模塊沒有復位功能; 延遲模塊的步長是可以設置的,而單位延遲模塊的步長固定為1,不可以改變

局域網傳輸速度升級

現在很多單位都建成了企業內部局域網&#xff0c;一般的企業網絡大多是使用雙 絞線連接網卡的方式來進行通信的。其中雙絞線通常采用的都是5類線&#xff0c;傳輸速率為100MB。而網卡則有一定的區別&#xff0c;很多網卡都是采取 10Mbps/100Mbmps自適應的網卡&#xff0c;即傳輸…

數據結構--棧 codevs 1107 等價表達式

codevs 1107 等價表達式 2005年NOIP全國聯賽提高組 時間限制: 1 s空間限制: 128000 KB題目等級 : 鉆石 Diamond題目描述 Description明明進了中學之后&#xff0c;學到了代數表達式。有一天&#xff0c;他碰到一個很麻煩的選擇題。這個題目的題干中首先給出了一個代數表達式&am…

目標檢測的圖像特征提取之(二)LBP特征

LBP特征實質是&#xff1a;圖像局部特征的提取 意義&#xff1a;紋理的提取 http://blog.csdn.net/zouxy09/article/details/7929531 1&#xff09;首先將檢測窗口劃分為1616的小區域&#xff08;cell&#xff09;&#xff1b; &#xff08;2&#xff09;對于每個cell中的一個…

VS2010安裝幫助文檔出現錯誤

安裝VS2010后的幫助文檔安裝出現錯誤:未能在指定文件夾中創建本地存儲區 安裝完VS2010后&#xff0c;出現錯誤&#xff0c;取消后 再安裝MSDN 打開“Help Library 管理器 - Microsoft Help 查看器 1.0” 提示“請為本地內容選擇位置” 默認的位置是在“C:\Documents and Settin…

matlab smulink筆記03——過零檢測

★過零檢測 變步長解算方法動態地評估計算下一個采樣時刻所使用的步長&#xff0c;當前后兩個采 樣點的狀態值變化大時&#xff0c;則縮小采樣步長&#xff0c;當前后兩個采樣點的值變化小時則增大步 這種做法使得解算器在計算不連續臨近區域時使用較小的步長&#xff0c;因為不…

電腦下鄉的遐想

最近討論家電下鄉的話題很熱&#xff0c;其中我個人最關心“電腦下鄉”。原因是&#xff0c;我是農村人&#xff0c;正好在電腦相關行業里混。 應當說&#xff0c;讓電腦下鄉是我多年的夢想&#xff0c;我多么盼望鄉下的鄉親們能夠上網看新聞、學習、看電視……但是&#xff0c…

angularjs學習曲線

angularjs學習曲線 剛開始學Augular覺得開發應用需要有相當的編程基礎. 不得不說這確實是一款了不起的開發框架&#xff0c;它要求開發人員設計低耦合和可維護的應用. 使用AngularJS 的復雜度就像使用PHP&#xff0c;Ruby on Rails等等, 都需要處理依賴注入&#xff0c;路由&am…

HttpWebRequest post上傳文件

public static string HttpUploadFile(string url, string path){// 設置參數 HttpWebRequest request WebRequest.Create(url) as HttpWebRequest;CookieContainer cookieContainer new CookieContainer();request.CookieContainer cookieContainer;request.AllowAutoRedir…

文章標題

**1>MSVCRTD.lib(exe_main.obj) : error LNK2019: 無法解析的外部符號 main&#xff0c;該符號在函數 “int __cdecl invoke_main(void)” (?invoke_mainYAHXZ) 中被引用 1>D:\vs2015-code\Imae_Client\x64\Debug\Imae_Client.exe : fatal error LNK1120: 1 個無法解析…

matlab simulink筆記04——switch模塊

Switch 模塊 Switch模塊是-.個選擇開關模塊,可根據判斷條件選擇多個輸入端口中的某個進行輸出。圖所示為CommonlyUsedBlocks中具有3個輸入端口.1個輸出端口的Switch模塊圖標。模塊的3個端口中,第1個和第3個端口為輸出端口提供輸出值,輸出端口輸出第1個輸人口還是第3個輸人口的值…

[Ajax]ajax學習與理解

1.新建demo.aspx頁面。2.首先在該頁面的后臺文件demos.aspx.cs中添加引用。 using System.Web.Services;3.無參數的方法調用. 大家注意了&#xff0c;這個版本不能低于.net framework 2.0。2.0已下不支持的。后臺代碼&#xff1a; [WebMethod] public static string SayHel…

優化Web網站性能

一、前端優化網站性能優化是一個很綜合的話題&#xff0c;涉及到服務器的配置和網站前后端程序等各個方面&#xff0c;我只是從實際經歷出發&#xff0c;分享一下自己所嘗試過的網站性能優化方法。之所以在標題上掛一個web2.0&#xff0c;是因為本文更偏重于中小網站的性能優化…

Gym - 100851F Froggy Ford kruskal

題目鏈接&#xff1a; http://acm.hust.edu.cn/vjudge/problem/307216Froggy FordTime Limit: 3000MS題意 青蛙過河&#xff0c;河中有若干個石頭&#xff0c;現在你可以加一個石頭&#xff0c;使得青蛙從左岸跳到右岸的最大跳躍距離最小。 題解 把左岸和右岸作為兩個虛節點&am…

Tesseract入門-VS2015下調用Tesseract4.0 +win7 64位系統

本文是基于最近的OCR識別項目學習ocr開源庫-tesseract的簡單調用&#xff0c;不涉及其余視覺知識。 參考文獻&#xff1a;http://blog.csdn.net/u012566751/article/details/54136836 參考庫&#xff1a;http://download.csdn.net/download/u010554381/10044876 1.預備工作 …

authconfig命令解析_學習筆記

時間&#xff1a;2017.11.16作者&#xff1a;李強參考&#xff1a;man,info&#xff0c;magedu講義聲明&#xff1a;以下英文純屬個人翻譯&#xff0c;英文B級&#xff0c;歡迎糾正&#xff0c;盜版不糾,才能有限&#xff0c;希望不誤人子弟為好。1、使用目的與場景先列在這里&…

matlab simulinK筆記06——代數環

★代數環 代數環,就是由于模型的輸出反饋到模塊或子系統的某個輸入端&#xff0c;如果這個輸入 是直接饋入的&#xff0c;那么二者在同一個采樣點內需得到求解&#xff0c;但又互相依賴,哪一方都不 能完成求解過程&#xff0c;使得解算器無法解算導致錯誤產生&#xff0c;這樣的…

PHP多種序列化/反序列化的方法 (轉載)

1. serialize和unserialize函數 這兩個是序列化和反序列化PHP中數據的常用函數。 <?php$a array(a > Apple ,b > banana , c > Coconut);//序列化數組 $s serialize($a); echo $s; //輸出結果&#xff1a;a:3:{s:1:"a";s:5:"Apple";s:1:&qu…