錯誤5:結構與對象是有區(qū)別的
C++中的結構與類差不多,的區(qū)別是,在缺省狀態(tài)下,結構的訪問權限是public,其繼承權限也是public。一些C++編程人員將結構作為數據對象,但這只是一個約定而非是必須這樣的。
在C#中,結構只是一個用戶自定義的數據類型,并不能取代類。盡管結構也支持屬性、方法、域和操作符,但不支持繼承和destructor。
更重要的是,類是一種索引型數據類型,結構是值型數據類型。因此,結構在表達無需索引操作的對象方面更有用。結構在數組操作方面的效率更高,而在集合的操作方面則效率較低。集合需要索引,結構必須打包才適合在集合的操作中使用,類在較大規(guī)模的集合操作中的效率更高。
C++中的結構與類差不多,的區(qū)別是,在缺省狀態(tài)下,結構的訪問權限是public,其繼承權限也是public。一些C++編程人員將結構作為數據對象,但這只是一個約定而非是必須這樣的。
在C#中,結構只是一個用戶自定義的數據類型,并不能取代類。盡管結構也支持屬性、方法、域和操作符,但不支持繼承和destructor。
更重要的是,類是一種索引型數據類型,結構是值型數據類型。因此,結構在表達無需索引操作的對象方面更有用。結構在數組操作方面的效率更高,而在集合的操作方面則效率較低。集合需要索引,結構必須打包才適合在集合的操作中使用,類在較大規(guī)模的集合操作中的效率更高。