freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

清華大學c課件第4章(編輯修改稿)

2024-11-12 13:37 本頁面
 

【文章內容簡介】 { x = xx。 y = yy。 } Point(Pointamp。 p)。 int getX() { return x。 } int getY() { return y。 } private: int x, y。 }。 構造函數和析構函數 Point::Point (Pointamp。 p) { x = 。 y = 。 cout Calling the copy constructor endl。 } 33 C++語言程序設計 清華大學 鄭莉 34 拷貝構造函數 (例 42) ? 當用類的一個對象去初始化該類的另一個對象時系統(tǒng)自動調用拷貝構造函數實現復制。 int main() { Point a(1,2)。 Point b = a。 //拷貝構造函數被調用。也可以寫 Point b(a)。 cout () endl。 } 構造函數和析構函數 C++語言程序設計 清華大學 鄭莉 35 拷貝構造函數 (例 42) ? 若函數的形參為類對象,調用函數時,實參賦值給形參,系統(tǒng)自動調用拷貝構造函數。例如: void fun1(Point p) { cout () endl。 } int main() { Point a(1, 2)。 fun1(a)。 //調用拷貝構造函數 return 0。 } 構造函數和析構函數 C++語言程序設計 清華大學 鄭莉 36 拷貝構造函數 (例 42) ? 當函數的返回值是類對象時,系統(tǒng)自動調用拷貝構造函數。例如: Point fun2() { Point a(1, 2)。 return a。 //調用拷貝構造函數 } int main() { Point b。 b = fun2()。 return 0。 } 構造函數和析構函數 C++語言程序設計 清華大學 鄭莉 37 隱含的拷貝構造函數 如果程序員沒有為類聲明拷貝初始化構造函數,則編譯器自己生成一個隱含的拷貝構造函數。 這個構造函數執(zhí)行的功能是:用作為初始值的對象的每個數據成員的值,初始化將要建立的對象的對應數據成員。 構造函數和析構函數 C++語言程序設計 清華大學 鄭莉 38 析構函數 ? 完成對象被刪除前的一些清理工作。 ? 在對象的生存期結束的時刻系統(tǒng)自動調用它,然后再釋放此對象所屬的空間。 ? 如果程序中未聲明析構函數,編譯器將自動產生一個隱含的析構函數。 構造函數和析構函數 C++語言程序設計 清華大學 鄭莉 39 構造函數和析構函數舉例 include iostream using namespace std。 class Point { public: Point(int xx,int yy)。 ~Point()。 //...其他函數原型 private: int x, y。 }。 構造函數和析構函數 Point::Point(int xx,int yy) { x = xx。 y = yy。 } Point::~Point() { } //...其他函數的實現略 40 C++語言程序設計 清華大學 鄭莉 41 類的應用舉例 (例 43) 一圓形游泳池如圖所示,現在需在其周圍建一圓形過道,并在其四周圍上柵欄。柵欄價格為 35元 /米,過道造價為 20元 /平方米。過道寬度為 3米,游泳池半徑由鍵盤輸入。要求編程計算并輸出過道和柵欄的造價。 游泳池 過道 include iostream using namespace std。 const float PI = 。 //圓周率 const float FENCE_PRICE = 35。 //柵欄的單價 const float CONCRETE_PRICE = 20。//過道水泥單價 class Circle { //定義類 Circle public: //外部接口 Circle(float r)。 //構造函數 float circumference()。 //計算圓的周長 float area()。 //計算圓的面積 private: //私有數據成員 float radius。 //圓半徑 }。 42 //類的實現 //構造函數初始化數據成員 radius Circle::Circle(float r) { radius = r。 } //計算圓的周長 float Circle::circumference() { return 2 * PI * radius。 } //計算圓的面積 float Circle::area() { return PI * radius * radius。 } 43 int main () { float radius。 cout Enter the radius of the pool: 。 // 提示用戶輸入半徑 cin radius。 Circle pool(radius)。 //游泳池邊界 Circle poolRim(radius + 3)。 //柵欄 //計算柵欄造價并輸出 float fenceCost = () * FENCE_PRICE。 cout Fencing Cost is $ fenceCost endl。 44 //計算過道造價并輸出 float concreteCost = (() ()) * CONCRETE_PRICE。 cout Concrete Cost is $ concreteCo
點擊復制文檔內容
教學課件相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1