15 c 物件導向設計

2021-10-08 10:38:18 字數 1497 閱讀 5831

#ifndef slump_h

#define slump_h

// 水果

class

slump

;slump

(slump&)=

default

;// 虛函式,如果希望子類可以有自己特定的版本,應使用virtual標識

virtual

double

price()

;// 純虛函式

// 含有純虛函式的類是抽象類,抽象類負責定義介面,子類實現介面

virtual

intcolor()

=0;// 當我們刪除乙個指向子類的父類指標時將產生未定義行為

// 定義析構函式為虛析構函式,一般父類都將析構函式定義為虛析構函式,這樣子類的析構函式都是虛的

virtual

~slump()

=default

;// 定義析構函式將阻止編譯器合成移動操作,父類沒有移動操作將阻止子類合成移動操作,如果需要,我們需要顯示定義

slump &

operator

=(slump&&)=

default

;slump

(slump&&)=

default;}

;#endif

#include

#include

"./slump.h"

// 繼承 slump,繼承只會繼承 slump 的public和protected的成員

// 雖然子類無法訪問父類的 private 成員,但他們卻是存在在當前物件中

// final 指示當前類為最終類,不能再被繼承

// c++ 允許多繼承

class

public slump;:

slump

;// 拷貝構造

:slump

(std::

move);

// 移動構造

// override 識別符號,覆蓋虛函式

double

price

() override

;// // final 識別符號,不允許後續的基類覆蓋

// double price() final;

intcolor

() override

// 更改繼承成員的訪問級別

using slump::_price;};

void

fun1()

#endif

#include

#include

#include

#include

#include

"./slump.h"

using

namespace std;

intsum

(int l,

int r)

;int

main()

(15)C 基礎 方法

文章目錄 方法是一種用於實現可以由物件或類執行的計算或操作的成員。類的方法主要是和類相關聯的動作,它是類的外部介面,對於那些私有字段來說,外部介面實現對它們的操作一般只能通過方法來實現。方法是包含一些列語句的 塊,在c 中每個執行命令都是在方法的上下文中完成的。方法是c 中將一堆 進行重用的一種機制...

15 C 筆記 結構體

示例 using system using system.text struct books public void display title console.writeline author author console.writeline subject subject console.wri...

C 物件導向設計

一.組合 復合 繼承,委託 1.composition 組合 has a 1.1 組合舉例 adapter 設計模式 關係 利用deque功能實現所有queue功能 template class queue size type size const reference front reference...