1
xCode的「構建和分析」抱怨「s」可能是垃圾。在iPhone上初始化NSString的最佳實踐
哪個更好的解決方案? A,B或C?
NSString *s; // A
NSString *s = nil; // B
NSString *s = @""; // C
if(x == 1) s = @"you picked 1";
if(x == 2) s = @"you picked 2";
if(x == 3) s = @"you picked 3";
零不是未知的,它是非常明確的。另一方面,空字符串也可能分配內存。零是要走的路。 – Eiko 2010-06-30 15:45:52
我的意思是說'nil'代表一個未知值,而空字符串是一個已知的值。 – mipadi 2010-06-30 16:13:07
像'NSString * s;'初始化時's'的'value'是什麼?它會是'無',就像沒有手動賦值的ivars一樣,還是會變成別的東西? – 2010-06-30 18:36:44