【发布时间】:2016-08-07 18:44:53
【问题描述】:
在swift中,无论如何我可以创建一个共享类吗?也就是说,假设有一个名为 Value 的类:
class Value{
var a = 0
}
我想使用这个类在不同的对象实例之间共享。 例如,
class Main{
func main(){
print(Value.a)
Value.a++
}
}
class OtherClass{
func otherMain(){
print(Value.a)
Value.a++
}
}
let main = Main()
let other = OtherClass()
//I want this call to print 0
main.main()
//I want this call to print 1
other.otherMain()
我在 var a 上尝试了静态,但它不会让我做诸如加法之类的算术...但是如果我将值更改为静态而不是类,它就可以工作。我认为 struct 和 class 之间的唯一区别是变量类型或引用类型......
我将不胜感激。谢谢
【问题讨论】:
-
为什么不直接创建一个全局变量
var a: Int = 0? -
我正在处理一个包含许多 swift 文件的大型项目。所以我希望有一个单独的类来处理一种类型的变量,并希望使用该类来像表格一样将其数据共享给其他实例。
-
你可以使用单例模式。
-
看来你想要的架构会很脆弱。
-
Sulthan - 这是为什么呢?
标签: swift