一、實驗目的和要求
1.類的定義;
2.物件的定義和使用;
3.成員變數和成員函式的定義和使用;
二、實驗環境(軟、硬體及條件)
一台安裝有visual c++ 6.0的計算機
三、實驗步驟
1.閱讀下面的程式,回答程式後面的問題。
#include
class cdate
int isleapyear()
public:
void print()
private:
int month; int day; int year;
};void main()
問題1:找出上述程式中的錯誤及發生錯誤的原因,然後改正。
問題2:類cdate中分別有哪些成員函式和成員變數,它們分別屬於哪種訪問許可權?
2.閱讀下面的程式,回答程式後面的問題。
#include
int month;//全域性變數
int day;
int year;
void set(int m,int d,int y)
class cdate
void print()
private:
int month; //成員變數
int day;
int year;
};void main()
問題1:該程式的執行結果是
問題2:①處是在給成員變數賦值,還是在給全域性變數賦值,如果去掉域作用符::,程式是否還能正確執行?
問題3:②處呼叫的哪個函式,如果去掉域作用符::,程式能否正確執行?為什麼?
3.試設計乙個複數類,該類有實部和虛部兩個成員資料,成員資料採用私有訪問許可權,同時該類有兩個公有成員函式,分別用來設定成員資料和輸出成員資料,在主函式中呼叫該類的公有函式設定和輸出成員資料。
4. 用物件導向的方法程式設計求5!
四、實驗中遇到的問題及解決
五、實驗結果及分析
1.(1),set函式沒有宣告,預設為私有,而主函式訪問私有成員函式,這是不允許的。改正:在set函式前宣告public.
(2)成員函式: void set(int m, int d, int y ),int isleapyear(),void print();(公有)
成員變數: int month; int day; int year;(私有)
2.(1)-858993460/-858993460/-858993460
(2)給全域性變數賦值。能正確執行。
(3)呼叫set函式。不能正確執行,因為這是給成員函式的形參初始化,若是去掉作用域::,則是呼叫函式。與程式要求的不相符。
3.#include
using namespace std;
class fushu
int play();
void main()
4.#include
class j
;int j::result()
void main()
C 實驗 實驗3 類和物件 1
定義乙個圓類,計算圓的面積和周長。要求 分別用成員函式和友元函式來求圓的面積和周長。includeusing namespace std const double pi 3.14159 class circle circle circle double r 成員函式計算周長 double circl...
C 實驗三 類和物件(1)
實驗名稱 實驗三 類和物件 1 實驗內容 設計乙個用於描述三維空間中的點的類,為其設計必要的成員變數和函式,並盡量增強其功能。include include using namespace std class point point string name,double x,double y,dou...
C 類 和 物件 1
類是 c 的核心特性,通常被稱為使用者定義的型別。類用於指定物件的形式,它包含了資料的表示和用於處理資料的方法。類中的資料 方法 函式,稱為類的成員。定義了類,也就意味著定義了類的物件包括什麼,以及可以在這個物件上執行哪些操作。例如,我們使用關鍵字class定義 box 資料型別,如下所示 clas...