Cocoa子类中是否有命名实例变量的首选方法?

Cocoa子类中是否有命名实例变量的首选方法?,cocoa,cocoa-design-patterns,Cocoa,Cocoa Design Patterns,当对像MKMapView这样的类进行子类化时,是否有命名新添加的实例变量的首选方法?苹果公司说它保留下划线前缀供他们自己使用,所以我可以继续使用我喜欢的任何东西而不用担心可能的冲突吗?因为你的子类将倾向于有你自己的前缀(比如EHMapView),你可以用\u eh\u作为实例变量的前缀(例如\u eh\u foo).由于您的子类将倾向于使用您自己的前缀(如EHMapView),您可以使用\u eh\u(例如\u eh\u foo)作为实例变量的前缀。您将希望使用任何超类都没有使用的名称-如果您不

当对像MKMapView这样的类进行子类化时,是否有命名新添加的实例变量的首选方法?苹果公司说它保留下划线前缀供他们自己使用,所以我可以继续使用我喜欢的任何东西而不用担心可能的冲突吗?

因为你的子类将倾向于有你自己的前缀(比如EHMapView),你可以用
\u eh\u
作为实例变量的前缀(例如
\u eh\u foo
).

由于您的子类将倾向于使用您自己的前缀(如EHMapView),您可以使用
\u eh\u
(例如
\u eh\u foo
)作为实例变量的前缀。

您将希望使用任何超类都没有使用的名称-如果您不小心这样做,编译器将出错,您只需更改变量的名称。一般来说,这没什么大不了的,你想用什么就用什么。据我观察,类别方法比实例变量更容易出现命名冲突问题。

您可能希望使用任何超类都没有使用的名称-如果您不小心这样做,编译器将出错,您只需更改变量的名称。一般来说,这没什么大不了的,你想用什么就用什么。据我观察,类别方法比实例变量更容易出现命名冲突问题。

更清楚;Apple为方法名保留下划线前缀,而不是IVAR


许多开发者喜欢用下划线前缀来命名他们的IVAR,以区别于他们的财产名称。

更清楚一些;Apple为方法名保留下划线前缀,而不是IVAR


许多开发者喜欢用下划线前缀来命名他们的IVAR,以区别于他们的财产名称。

Cocoa中有一个完整的专用于命名约定和样式。

Cocoa中有一个完整的专用于命名约定和样式。

这实际上与苹果对下划线前缀的主张相冲突。I仍然使用u前缀,以便于区分私有变量和公共属性。从我所读到的内容来看,更大的问题是在私有(类别)方法前加前缀。这实际上与苹果关于下划线前缀的说法相冲突。我仍然使用uu前缀来轻松区分私有变量和公共属性。据我所知,更大的问题是在私有(分类)方法前面加前缀。我听说它们更喜欢“Bob”而不是“Robert”。;-)我听说他们更喜欢鲍勃而不是罗伯特我已经通读了,但是关于ivars的部分非常简短,没有解决这个非常具体的问题。我已经通读了,但是关于ivars的部分非常简短,没有解决这个非常具体的问题