什么时候应该在Objective c中使用assign?

sta*_*low 5 iphone xcode cocoa cocoa-touch objective-c

我理解我应该使用retain的原因,但为什么我应该使用assign?(除了避免保留周期)

[编辑] 所以如果我理解了Chuck在https://stackoverflow.com/questions上的答案......当我使用assign时,一旦变量超出方法的范围,变量将失去范围,就像在常规中一样C型语言行为?

DHa*_*ick 12

您应该分配不是对象的东西.应分配任何C类型(例如int,float,char,double,struct和enum).