我想用静态方法构建一个服务对象。我应该在这种情况下使用struct或class或enum吗?有什么区别?可能会影响编译时间?可能它会以某种方式影响速度?我知道结构对于实例更快。但它如何影响这种情况呢?
你的想法?你体验过吗?
谢谢。
struct/class/enum Linker {
public static func skypeCall(contact:String) {
//...
}
public static func phoneCall(phoneNumber:String) {
//...
}
public static func openWebPage(url:String) {
//...
}
}
答案 0 :(得分:5)
Swift中的类和结构有两个关键区别。类允许继承,类是引用类型,而结构是值类型。
根据这些差异做出决定。
由于Linker
中的所有内容都是静态的,因此引用和值之间的差异变得无关紧要,因为您没有任何实例。
这样就留下了继承权。你会继承Linker
吗?如果没有,请使用结构。如果是,请使用课程。
现在你问的是enum,你可能会因为Linker
似乎没有任何常量而只是方法来排除结构。