现在的位置: 首页 > 综合 > 正文

先随便记一下

2012年07月04日 ⁄ 综合 ⁄ 共 1662字 ⁄ 字号 评论关闭
View Code

/** ===== NSString ===== */
NSString
* string = @"hello, 1901";
NSLog(
@"string retainCount: %lu", [string retainCount]);
// output: string retainCount: 1152921504606846975

NSString
* string = [[NSString alloc] initWithString:@"hello, 1901"];
NSLog(
@"string retainCount: %lu", [string retainCount]);
// output: string retainCount: 1152921504606846975

NSString
* string = [[NSString alloc] initWithFormat:@"%@", @"hello, 1901"];
NSLog(
@"string retainCount: %lu", [string retainCount]);
// output: string retainCount: 1

NSString
* string = [[NSString alloc] initWithUTF8String:"hello, 1901"];
NSLog(
@"string retainCount: %lu", [string retainCount]);
// output: string retainCount: 1

/** ===== NSMutableArray & NSArray ===== */
NSMutableArray
* array = [[NSMutableArray alloc] init];
NSLog(
@"array retainCount: %lu", [array retainCount]);
// array retainCount: 1

NSArray
* array = [[NSArray alloc] init];
NSLog(
@"array retainCount: %lu", [array retainCount]);
// output: array retainCount: 2

NSArray
* array = [[NSArray alloc] initWithObjects:@"hello, 1901", nil];
NSLog(
@"array retainCount: %lu", [array retainCount]);
// output: array retainCount: 1

NSArray
* array1 = [[NSArray alloc] init];
NSLog(
@"array1 retainCount: %p", array1);
NSArray
* array2 = [[NSArray alloc] init];
NSLog(
@"array2 retainCount: %p", array2);
NSArray
* array3 = [[NSArray alloc] init];
NSLog(
@"array3 retainCount: %p", array3);
/*
output:
array1 retainCount: 0x10010d050
array2 retainCount: 0x10010d050
array3 retainCount: 0x10010d050
*/


NSString
* string = [NSString stringWithUTF8String:"hello, 1901"];
NSArray
* array1 = [[NSArray alloc] initWithObjects:string, nil];
NSLog(
@"array1 retainCount: %p", array1);
NSArray
* array2 = [[NSArray alloc] initWithObjects:string, nil];
NSLog(
@"array2 retainCount: %p", array2);
/*
output:
array1 retainCount: 0x1001107c0
array2 retainCount: 0x100110840
*/

抱歉!评论已关闭.