我想知道NSObject和struct之间的区别.以下示例将解释这两种情况
指导
struct UserDetails{
var userName:String
var userID:String
var userAge:String
func userDescription()->String{
return "name " + userName + "age " + userAge
}
}
在NSObject类中
class UserDetails: NSObject {
var userName:String?
var userID:String?
var userAge:String?
func userDescription()->String{
return "name " + userName! + "age " + userAge!
}
}
你能告诉我在哪里必须使用NSObject类,我必须使用struct ..?
解决方法
Swift中的类和结构比许多语言中的类更接近.两者都可以具有属性,方法,初始化器,下标,可以符合协议,并且可以扩展.但是,只有类可以利用继承并使用deinitializers,并且因为类是通过引用使用的,所以可以对特定实例具有多个引用.
整个Swift中使用了结构 – 数组,字典,一切都是可选的,而且更多是基于结构类型构建的,因此性能应该非常高.只要不需要继承或类提供的多个引用,就可以使用struct.