C 實驗類與物件

2021-10-10 02:17:33 字數 2703 閱讀 2288

桂 林 理 工 大 學

實 驗 報 告

實驗名稱 類與物件 日期 2023年 04 月17 日

一、實驗目的:

1. 掌握類的定義和使用。

2. 掌握類的物件的宣告。

3. 複習具有不同訪問屬性的成員的訪問方式。

4. 觀察建構函式和析構函式的執行過程。

5. 使用vc++的debug除錯功能觀察程式流程,跟蹤觀察類的建構函式、析構函式、成員函式的執行順序。

二、實驗環境:

visual c++

三、實驗內容:

(寫出主要的內容)

定義乙個cpu類,包含等級(rank)、頻率(frequency)、電壓(voltage)等屬性,有兩個公有成員函式run(提示資訊「cpu開始執行」)、stop(提示資訊「cpu停止執行」)。其中,為列舉型別cpu_rank,定義為enum cpu_rank,frequency為單位是mhz的整型數,voltage為浮點型的電壓值。在main函式中定義該類的乙個物件,並呼叫其公有成員函式,觀察建構函式和析構函式的呼叫順序。試試能不能在主函式中列印該物件的屬性值,並分析原因。

#include

using

namespace std;

enum cpu_rank

;class

cpu;

cpu::cpu (cpu_rank r,

int f,

float v)

cpu::

~cpu (

)void cpu::

run(

)void cpu::

stop()

void

main()

輸出結果:構造了乙個cpu!

cpu開始執行!

cpu停止執行!

析構了乙個cpu!

2.在上述cpu類中新增成員函式,分別用於設定及獲取各屬性的值,並在main函式中呼叫這些函式。觀察當這些函式被設定成private或public時會有什麼不同。

3.定義乙個簡單的computer類,有資料成員晶元(cpu)、記憶體(ram)、光碟機(cdrom)等,有兩個公有成員函式run、stop。cpu為cpu類的乙個物件,ram為ram類的乙個物件,cdrom為cdrom類的乙個物件。cpu類的定義見實驗任務1,ram、cdrom類可以自由設定一些屬性,並提供類似的run、stop這兩個成員函式。在main函式中測試這個類,分析成員函式的執行順序。

#include

enum cpu_rank

;class

cpu;

cpu::cpu (cpu_rank r,

int f,

float v)

cpu::

cpu(

)cpu::

~cpu (

)void cpu::

run(

)void cpu::

stop()

class

ram;

ram::ram (

)ram::

~ram (

)void ram::

run(

)void ram::

stop()

class

cdrom

;cdrom::cdrom (

) cdrom::

~cdrom (

)void cdrom::

run(

)void cdrom::

stop()

class

computer

;computer::

computer()

computer::

~computer (

)void computer::

run(

)void computer::

stop()

void

main()

輸出結果:構造了乙個cpu!

構造了乙個ram!

構造了乙個cdrom!

構造了乙個computer!

computer開始執行!

cpu開始執行!

ram開始執行!

ram停止執行!

cpu停止執行!

computer停止執行!

析構了乙個computer!

析構了乙個cdrom!

析構了乙個ram!

析構了乙個cpu!

4.定義乙個point類,屬性為座標x、y的值,包含有如下成員函式:建構函式、析構函式、拷貝建構函式、設定與獲取x和y的值的函式,並測試之。

#include

class

point

;point::

point

(int x,

int y)

point::

point

(point &p)

int point::

getx()

int point::

gety()

void

main()

輸出結果:拷貝建構函式被呼叫!33

四、心得體會:

1、通過學習類與物件,基本了解掌握了物件導向的基本操作。

2、熟悉了資料成員與成員函式的不同。

3、不同類之間的不能直接使用成員函式。

C 類與物件 實驗四(二)

實現畫圖類 實現分數類 1 include 2 include3 include fraction.h 4 using namespace std 56 帶引數的建構函式的實現 7 fraction fraction int t,int b top t bottom b 9 fraction fra...

C 物件導向實驗二 類與物件

類的建立和使用類來建立物件。類的資料成員的宣告。成員函式的宣告和定義。private,public訪問限定符的使用。使用提供的公有的成員函式給物件成員賦值。類 包含私有的資料成員 length,wide 和公有的成員函式 過載的建構函式oneclass,求和函式add,輸出顯示函式 display ...

類與物件 實驗二

實驗目的 1 掌握類的建構函式和析構函式的概念和使用方法 2 掌握物件陣列 物件指標的定義和使用方法 3 掌握new和delete的使用方法 實驗內容 1 設計描述平面座標上的點cpoint類,該類滿足下述要求 具有x,y座標資訊 具有帶預設形參值的建構函式,引數分別用於初始化x和y座標資訊 具有獲...