1.類是引用類型 在堆空間 結構體是值類型 在椆难眩空間
2.類有反初始化器 結構體沒有
3.下標的返回值是類類型的時候 不用寫set方法 返回值是結構體類型的時候 要寫set方法
4.類可以用static class來修飾類型屬性 類型方法 結構體只能使用static來修飾
5.類的內存大小 是 8個字節(jié)的類型信息 + 8個字節(jié)的引用計數(shù) + 成員變量
類型信息里面存放的是函數(shù)地址 必須是16的倍數(shù)
結構體是 成員變量的個數(shù) * 成員變量占有的字節(jié)數(shù) 是8的倍數(shù)
6.結構體是深拷貝 相當于拷貝出來一個副本 改變之后 對原先的值不會有影響
類是淺拷貝 相當于多了一個引用計數(shù) 對原先的值有影響
7.因為結構體在棧內 能直接找到函數(shù)地址
而類的函數(shù)地址存放在類型信息內 相對而言 尋找的速度稍慢
8.類有繼承 可以重寫 結構體無法繼承
9.初始化器 對于結構體 編譯器會生成多種初始化器 (如果自己沒有寫初始化器的話 如果寫了 編譯器就不會自動生成了) 對于類而言 編譯器只會生成init這種編譯器 (如果自己沒有寫初始化器的話 如果寫了 編譯器就不會自動生成了)
10.結構體無法跟OC橋接 類可以橋接
第三條暫定