ios 메모리 관리 1-retain과release의 간단한 사용
범위:
메모리 관리 지침
다음은 테스트 코드입니다.
'Command Line Tool' 기반 프로젝트를 새로 만듭니다. '메모리 관리 1-retain과 Release의 간단한 사용', Student 클래스를 새로 만듭니다.
Student.h
//
// Student.h
// 1-retain release
//
// Created by Rio.King on 13-8-26.
// Copyright (c) 2013 Rio.King. All rights reserved.
//
#import <Foundation/Foundation.h>
@interface Student : NSObject
{
int age;
}
@property int age;
@end
Student.m
//
// Student.m
// 1-retain release
//
// Created by Rio.King on 13-8-26.
// Copyright (c) 2013 Rio.King. All rights reserved.
//
#import "Student.h"
@implementation Student
@synthesize age;
// dealloc , (auto reference count) , , .h 。
- (void)dealloc{
//insert your code here...
NSLog(@"%@ ",self);
[super dealloc];// super dealloc ,
}
@end
main.m
//
// main.m
// 1-retain release
//
// Created by Rio.King on 13-8-26.
// Copyright (c) 2013 Rio.King. All rights reserved.
//
#import <Foundation/Foundation.h>
#import "Student.h"
int main(int argc, const char * argv[])
{
@autoreleasepool {
Student *stu = [[Student alloc]init];//alloc , 1
//Student *stu = [[[Studnet alloc]init] autorelease]; // stu , release
//z
NSLog(@"count:%zi", [stu retainCount]);
[stu retain];// 2
NSLog(@"count:%zi", [stu retainCount]);
[stu release];// 1
NSLog(@"count:%zi", [stu retainCount]);
[stu release];//release , 1, 0,,, dealloc
}
return 0;
}
실행 결과:
2013-08-26 10:53:14.506 메모리 관리 1-retain과release의 간단한 사용 [754:303] count:1
2013-08-26 10:53:14.508 메모리 관리 1-retain과release의 간단한 사용 [754:303]count:2
2013-08-26 10:53:14.509 메모리 관리 1-retain과release의 간단한 사용 [754:303] count:1
2013-08-26 10:53:14.509 메모리 관리 1-retain과release의 간단한 사용 [754:303]
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Swift의 패스트 패스Objective-C를 대체하기 위해 만들어졌지만 Xcode는 Objective-C 런타임 라이브러리를 사용하기 때문에 Swift와 함께 C, C++ 및 Objective-C를 컴파일할 수 있습니다. Xcode는 S...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.