Day10(下) 物件導向程式設計強化

2021-07-03 11:05:25 字數 2935 閱讀 2100

理解物件導向程式設計的思想,c++的類的概念是把所有的人事物都抽象成乙個類,類中定義了人事物的屬性和方法,在c++中成為成員變數和成員函式,通過給成員變數賦值,由成員函式進行對成員變數的處理操作返回結果。看下面的**,深刻理解指標在類中的使用。

#include "iostream"

using namespace std;

class circle

double gets() };

int main(int argc, char const *argv)

結論:

1.private修飾的成員變數和成員函式,只能在類的內部使用

2.publix修飾的成員變數和成員函式,能在類的內部和外部使用

3.protected修飾的成員變數和成員函式,在類的外部不能使用,在類的內部能使用(繼承中需要用到)

使用時需要注意的是,如果乙個成員變數前面不告訴編譯器是什麼型別, 那麼編譯器會預設為private,而private的關鍵字修飾的意思是把類的成員變數隱藏起來。。

看乙個例子,求出立方體的面積和體積,show the codes

#include "iostream"

using namespace std;

//目標:抽象立方體 求立方體的s 和 v

class cube

int geta()

void setb(int a)

int getb()

void setc(int a)

int getc()

void setabc(int a=0, int b=0, int c=0)

public:

int gets()

int getv()

public:

char * cubeequeal(cube &c1, cube &c2)

return "不相等";

} char * cubeequeal(cube &c2)

return "不相等";

}private:

int m_a;

int m_b;

int m_c;

int m_v;

int m_s;

};void main()

double getx0()

double gety0() };

class advcircle

public:

char * judge(double x, double y)

else

}char * judge(point &p)

else

}};void main()

else

system("pause");

}

繼續深入,如果我們想把類的定義放在標頭檔案裡,而在原始檔裡進行成員函式的實現,首先分析一下,以點和圓的類說明:

mycircle.h

#pragma once

#include "mypoint.h"

class mycircle

;

mycircle.cpp

#include "mycircle.h"

void mycircle::setcir(double x, double y, double r)

char* mycircle::judge(double x, double y)

else }

char* mycircle::judge(mypoint &p)

else

}

mypoint.h

#pragma once

class mypoint

;

mypoint..cpp

#include "mypoint.h"

void mypoint::setpoint(double x, double y)

double mypoint::getx0()

double mypoint::gety0()

要認真學習物件導向程式設計的方法和思想。

另外一點需要提及的是空類

class cls

;int main(int argc, char const *argv)

答案為1.

c++建構函式

建構函式有有參建構函式、無參建構函式和賦值建構函式(也叫拷貝建構函式)。

其中有參建構函式的呼叫方法只有下面的三種,show you the codes

#include "iostream"

using namespace std;

//隱式 或 顯示 建構函式 析構函式

//class test

//無引數建構函式

test()

//四種應用場景

//賦值建構函式 copy建構函式

test(const test &obj)

public:

void print()

{cout<<"m_a:"<

一定要多練,

多練!!!!!!!

多練!!!!!!

多練!!!!!!!

C 基礎程式設計DAY10

寫乙個函式,將乙個整數的各位數字的反序列印 include include using namespace std int reverse out int n cout endl return 0 void show int n int main 1 函式show 採用遞迴求解,if n 10 co...

day10物件導向下 介面,包裝類

裝箱 把基本資料型別轉為包裝類物件。轉為包裝類的物件,是為了使用專門為物件設計的api和特性 拆箱 把包裝類物件拆為基本資料型別。轉為基本資料型別,一般是因為需要運算。基本數值 包裝物件 integer i1 newinteger 4 使用建構函式函式 integer i2 integer.valu...

python的類與物件(day10)

定義類 class classname 類的幫助資訊 statement 在定義類時,如果沒有想好類的功能時,可用pass語句代替。建立類的例項 classname parameterlist classname 為必選引數,用於指定具體的類。後者為可選引數。init 該方法必須包含乙個self引數...