1. 程式人生 > >結構體和類的區別,聯系

結構體和類的區別,聯系

變量賦值 屬性 left 運行 效率 整體 如果 場景 區別

結構體和類的共同點:

都可以將多個數據封裝為一個整體

結構體和類的不同點:

  • 結構體只能封裝數據,而類還可以封裝行為;
  • 結構體實例是值類型,類實例是對象類型
  • 結構體實例存儲在棧空間,類實例存儲在堆空間
  • 結構體變量賦值是值拷貝,類實例賦值是指針引用


應用場景:

如果封裝的這個數據,不僅有數據還有方法,只能使用類,

b. 如果表示實體,沒有行為,光有屬性,

i. 如果屬性較少,只有幾個的情況下,就定義為結構體,分配在棧,提高運行效率

ii. 如果屬性較多,就不要定義為結構體,因為這樣結構體變量會在棧中占據很大一塊空間,反而會影響效率,則需要定義為類



結構體和類的區別,聯系