Swift:类前缀是否需要?
我应该给我的Swift类名称一个三个字母的前缀由Objective-C约定推荐:类名称必须在整个应用程序中是唯一的 ?
不, 你不需要Swift中的类前缀 ,因为类是命名空间的模块,他们居住。
如果你需要在你的应用程序中声明(例如)一个Swift Array
和一个Array
类/结构体之间的Swift.Array
,可以将它作为Swift.Array
或MyProject.Array
。 这也适用于扩展:
extension Swift.Array { ... } extension MyProject.Array { ... }
不,前缀绝对不是必须的。
假设您的应用程序具有MyApp
名称,并且您需要声明您的自定义UICollectionViewController
。
你不需要这样的前缀和子类:
class MAUICollectionViewController: UICollectionViewController {}
像这样做:
class UICollectionViewController {} //no error "invalid redeclaration o..."
为什么? 。 因为你声明的是在当前模块中声明的,这是你当前的目标 。 UIKit
UICollectionViewController
在UIKit
模块中声明。
如何在当前模块中使用它?
var customController = UICollectionViewController() //your custom class var uikitController = UIKit.UICollectionViewController() //class from UIKit
如何区分他们从另一个模块?
var customController = MyApp.UICollectionViewController() //your custom class var uikitController = UIKit.UICollectionViewController() //class from UIKit