NSObject和Struct之间的区别

前端之家收集整理的这篇文章主要介绍了NSObject和Struct之间的区别前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想知道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.

猜你在找的iOS相关文章