广告广告
  加入我的最爱 设为首页 风格修改
首页 首尾
 手机版   订阅   地图  繁体 
您是第 5126 个阅读者
 
发表文章 发表投票 回覆文章
  可列印版   加为IE收藏   收藏主题   上一主题 | 下一主题   
s89tsvs62219
数位造型
个人文章 个人相簿 个人日记 个人地图
小人物
级别: 小人物 该用户目前不上站
推文 x0 鲜花 x8
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片
推文 x0
[C/C++] c++继承的问题~~
我查了几本书都没有说的很详细~
可以知道的大大说清楚一点吗.....

第一个

Porsche 继承Car
Pporsche* pPorsche = new Porsche(100,3); <==他的建构需两个参数,不重要
Car* pCar = pPorsch ..

访客只能看到部份内容,免费 加入会员 或由脸书 Google 可以看到全部内容



献花 x0 回到顶端 [楼 主] From:台湾 台北市 | Posted:2005-05-02 21:17 |
skyer
数位造型
个人文章 个人相簿 个人日记 个人地图
路人甲
级别: 路人甲 该用户目前不上站
推文 x0 鲜花 x0
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

1.
C-Style 转型.. 就是硬转,管 Class 有没有关系
在 Compile & Runtime 不作任何检查.. 一但出错就是....当!
在这里,这个转型是合法的.. 子类别可以转型成父类别

2.
感觉怪怪的..
Car* pCar = static_cast <Car*> pPorsche;
这样好些 :p
static_cast 转型的话,会作 compile-time check。
也就是说,如果你要把 a 转成 b, 而 a, b 是没有任何关系的 object
则在编译时,就会有 error message

static_cast 不作 runtime-check, 一但出错就是.... 当!

3.
先将 pCar 转回成 Porsche, 再呼叫 Porsche 的 member function - maxSpeed()


PS: C++ 的转型还有
* dynamic_cast
跟 static_cast 的差别就是会作runtime check, 如果无法转型的话,会传回 NULL

* reinterpret_cast
我的感觉就是跟 C-Style 转型一样,但好像有点小区别..
这个好像有加上一点限制

此文章被评分,最近评分记录
财富:30 (by codeboy) | 理由: 感谢帮忙讲解喔~^^


献花 x0 回到顶端 [1 楼] From:台湾中华电信 | Posted:2005-05-03 12:48 |
s89tsvs62219
数位造型
个人文章 个人相簿 个人日记 个人地图
小人物
级别: 小人物 该用户目前不上站
推文 x0 鲜花 x8
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

一楼大大讲解的好清楚丫~感谢谢大大,我有点概念了


献花 x0 回到顶端 [2 楼] From:台湾 台北市 | Posted:2005-05-03 14:01 |

首页  发表文章 发表投票 回覆文章
Powered by PHPWind v1.3.6
Copyright © 2003-04 PHPWind
Processed in 0.050195 second(s),query:16 Gzip disabled
本站由 瀛睿律师事务所 担任常年法律顾问 | 免责声明 | 本网站已依台湾网站内容分级规定处理 | 连络我们 | 访客留言