5

在为 iOS 编程时,我遇到了以下情况:

我有一个带有类方法的单例类+ (Store*)sharedStore。当我想在单例对象上调用实例方法时,我可以使用点语法来获取该对象,即[Store.sharedStore foo].

但是,Xcode 在输入点后不会自动完成“sharedStore”。另一方面,[[Store sharedStore] foo] 自动完成的!

有没有“类属性”这样的东西?如果我可以sharedStore在类上变成只读属性,点语法将获得自动完成。

更一般地说,Xcode 根本不会在任何非属性的点语法后自动完成,即使这是调用(getter)方法的有效方式。

感谢任何解决方案、解决方法或信息。

4

2 回答 2

3

目前,就类吸气剂而言,我们似乎必须:

  • 在没有自动完成的情况下使用此语法:Store.sharedStore;或者
  • 改用括号语法:[Store sharedStore].

我最近没有尝试过其他编辑器(例如 AppCode)。另一个编辑器可能会自动更正类 getter 上的点语法。

关于什么是正确的、合乎逻辑的或可读的,意见各不相同。

于 2013-01-22T12:12:23.197 回答
0

点语法用于访问属性。有些人将它与返回值且不获取参数的实例方法一起使用,但这是一种不好的方法。所有其他情况都是错误的。

于 2013-01-07T10:22:58.170 回答