release 是將內存引用計數-1 nil 直接賦值為0 除非這個指針指向的空間被釋放 否則就是內存泄露
nil是表示0x0,可以理解為空指針。release是釋放內存。
例如:你開辟了一塊內存p=[[nsobject alloc] init]; 這個時候p是指向這塊內存區域的,如果你直接p=nil,會造成這塊內存沒有被釋放,內存泄露。 如果[p release]釋放了內存,但是p還是指向這個內存地址,如果在操作p會出現EXC_BAD_ACCESS。正確的做法應該是釋放后,把p指向nil
nil是表示0x0,可以理解為空指針。release是釋放內存。
例如:你開辟了一塊內存p=[[nsobject alloc] init]; 這個時候p是指向這塊內存區域的,如果你直接p=nil,會造成這塊內存沒有被釋放,內存泄露。 如果[p release]釋放了內存,但是p還是指向這個內存地址,如果在操作p會出現EXC_BAD_ACCESS。正確的做法應該是釋放后,把p指向nil