僅僅是自我的總結,不涉及過多。。需要更多詳細資料的請自行百度。
dynamic_cast 和 dynamic_Pointer_cast的使用
例如基類A ,派生類B.。A->B 則爲向下轉換。。B->A則爲向上轉換。。向上轉換爲隱士轉換。向下轉換需要dynamic_cast或者c的轉換方式。
B * b = new B;
A * a = b;
此時b就是向上轉換。無需顯式轉換既可以編譯通過。
一般用於有繼承關係的類之間的向下轉換。
當指針是智能指針時候,向下轉換,用dynamic_Cast 則編譯不能通過,此時需要使用dynamic_pointer_cast。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
codeforces 1251E1/E2 Voting
祤溪
2020-07-08 12:36:32
獲取某一目錄下所有文件夾名,返回vector「string」
COSummer
2020-07-08 12:27:32
linux環境下開源庫jsoncpp使用教程
Worthy_Wang
2020-07-08 12:19:12
C++:模擬實現list容器(支持迭代器)
ETalien_
2020-07-08 12:19:01
C++(面試題):給40億個不重複的無符號整數,沒排過序,如何快速判斷一個數是否在這40億個數中
ETalien_
2020-07-08 12:19:01
C++ 併發中的無鎖編程
蚓无爪牙之利
2020-07-08 11:23:03
數據結構——數組(3) 在有序數組中找出重複的次數最多的數
zhangying_496
2020-07-08 10:38:18
數據結構——數組(1)數組求和&打印二維數組&判斷數組是否遞增
數組求和 方法一:直接一次for循環 int GetSum1(int *a,int n) { int sum=0; for (int i=0; i<n;i++) { sum+=a[i];
zhangying_496
2020-07-08 10:38:18
C語言實現的json解析程序
lindorx
2020-07-08 10:35:53
大話設計模式C++版本-04-代理模式
wkd_007
2020-07-08 10:27:39
大話設計模式C++版本-07-模板方法模式
wkd_007
2020-07-08 10:27:28
大話設計模式C++版本-05-工廠方法模式
wkd_007
2020-07-08 10:27:26