C 類的彙總

2021-06-27 10:59:30 字數 1931 閱讀 2824

1、父類的指標可以指向子類物件位址

2、想讓子類能夠重寫父類函式且能夠呼叫子類自己的同名函式,就要把函式命名為virtal虛函式,

#include #include using namespace std;

class shape//形狀};

class polygo:public shape//多邊形};

void outputshape1( shape &arg) //當傳入子類的物件時,會發生向上轉型,但是由於是引用型別(指標型別也可以),向上轉型時子類資訊不會丟失,

//當父類中的呼叫函式是virtual虛函式時,子類也有該函式時呼叫子類的,子類沒有就呼叫父類的

void main()

3、訪問類的私有成員①

類的私有成員只能在類內訪問。。全域性函式是無法訪問的。

但是可以定義這樣的介面,如 int getvalue();i為類的私有成員

。外界通過物件呼叫該函式來達到訪問私有成員的目的

還有一種辦法訪問類的私有成員:

當我們的工程總類越來越多的時候,我們很難避免類與類之間相互操作。倘若每個類之間相互操作都通過函式進行,那可想我們編寫**是多麼的繁瑣,想投機取巧走小路麼?是的,c++提供了這種捷徑,讓我們直接對乙個類的私有成員進行操作——當然,我極力反對這種做法,因為它打破了類的封裝性。

3、訪問類的私有成員

類的私有成員只能在類內訪問。。全域性函式是無法訪問的。

但是可以定義這樣的介面,如 int getvalue();i為類的私有成員

。外界通過物件呼叫該函式來達到訪問私有成員的目的

②當我們的工程總類越來越多的時候,我們很難避免類與類之間相互操作。倘若每個類之間相互操作都通過函式進行,那可想我們編寫**是多麼的繁瑣,想投機取巧走小路麼?是的,c++提供了這種捷徑,讓我們直接對乙個類的私有成員進行操作——當然,我極力反對這種做法,因為它打破了類的封裝性。

#include using namespace std; 

class a

void print()

};

class b: public a

b(int a)

}; int main()

#include using namespace std; 

class b

virtual void ff()

};

class cb : public ca

void ff()

}; class cc : public cb

}; int main()

輸出:01

02

03

04

05

06

07

08

09

10

11

12

13

14

15

16

17

18

ca f() 

cb f() 

c f() 

c f() 

cb ff() 

cb f() 

ca ff() 

ca f() 

cb ff() 

c f() 

ca ff() 

ca f() 

指標和引用都能引發多型。

迷宮類彙總

include include include include using namespace std const int dx 4 const int dy 4 int g 1001 1001 f 1001 1001 d 1000005 d陣列就是在下的優化,每種顏色對應的答案 int n,m,k...

Java IO處理類的彙總

版的 文本版的 輸入輸出資料型別 說明inputstream outputstream byte 最底層bytearrayinputstream bytearrayoutputstream byte 帶位元組緩衝 緩衝fileinputstream fileoutputstream byte 直接對...

String類方法彙總

1.字串串聯 string concatenation var q from c in db.customers select new 語句描述 這個例子使用 運算子在形成經計算得出的客戶location值過程中將字串欄位和字串串聯在一起。2.string.length var q from p i...