C++面向對象概念

C++編程的主要目的是將對象對象的概念引入到C編程語言中。面向對象編程是一個範例,提供許多概念,如繼承,數據綁定,多態等。

一切都表示爲對象的編程範例被稱爲真正的面向對象的編程語言。 Smalltalk是第一個真正的面向對象的編程語言。

OOP(面向對象編程系統)

對象意味着真實世界的實體,如筆,椅子,表等。面向對象編程是一種使用類和對象來設計程序的方法或範例。 它通過提供一些簡化了軟件開發和維護的概念:

  • 對象
  • 繼承
  • 多態
  • 抽象
  • 封裝

對象

任何具有狀態和行爲的實體都稱爲對象。 例如:椅子,鋼筆,桌子,鍵盤,自行車等。它可以是物理和邏輯的。

對象的集合稱爲類。 它是一個邏輯實體。

繼承

當一個對象獲取父對象的所有屬性和行爲,稱爲繼承。 它提供代碼可重用性。 它用於實現運行時多態性。

多態

當一個任務通過不同的方式執行時,即被稱爲多態性。 例如:以不同的方式說服客戶,畫一些圖形的東西:畫形狀或矩形等
在C++中,我們使用函數重載和函數重寫來實現多態。

抽象

隱藏內部細節和顯示功能被稱爲抽象。 例如:電話,我們並不知道打電話時電話機內部如何處理。
在C++中,使用抽象類和接口來實現抽象。

封裝

將代碼和數據綁定(或包裝)在一起成爲單個單元稱爲封裝。 例如:膠囊,它包裹着不同的藥物。

OOP相對於面向過程的編程語言的優點

  • OOP(面向對象)使開發和維護變得更容易,因爲在面向過程的編程語言中,如果代碼隨着項目規模的增長而增長,就不容易管理。

  • OOP(面向對象)提供數據隱藏,而在面向過程的編程語言中,可以從任何地方訪問全局數據。

  • OOP(面向對象)提供更有效地模擬真實世界事件的能力。 如果我們使用面向對象的編程語言,就可以提供真實世界裏的問題的解決方案。