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...