27 尽量少做类型转换——effective c++学习笔记

本文探讨了C++规则中关于类型错误避免、转型注意事项及推荐使用的新式转型方法,旨在提供有效的代码设计和实现策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

C++规则的设计目标之一是,保证“类型错误绝对不会发生”。

转型会破坏类型系统。

旧式转型风格:

(T)express

T(express)

新式转型:

1、  const_cast<T>(expression)

单一对象可能拥有一个以上的地址,分别是以基类指针指向和子类指针指向。

由于知道“对象如何布局”设计的转型可能在某一平台上可以,但是其他的平台上却不可以。

请记住:

1、  如果可以,尽量避免转型,特别是在注重效率的代码中避免dynamic_casts。如果有个设计需要转型动作,请考虑无需转型的替代方案。

2、  如果转型是必须的,试着将它隐藏于某个函数背后,客户随后可以调用该函数,而不需要将转型放到自己的代码中。

3、  宁可使用c++-style(新式转型),不要使用旧式转型。前者容易辨认出来,而且也比较有着分门别类的职掌。也就是,新式转型目标很窄。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值