摘要: Item 5: 对定制的“类型转换函数”保持警觉 C++从C语言那继承了其隐式转换,可以实现不同类型之间的转换,且C++的隐式转换还存在更令人害怕的转型,有可能出现数据丢失。对于这些,你无能为力,因为这都是语言自身提供的。然而当你的自定义类型登场时,你可以通过提供某些函数,来作为编译器的转型之用。但是为什么最好不要提供任何类型转换函数呢? 原因在于:在你为打算也为预期的情况下,此类函数可能会被调用,而其结果可能不正确、不直观,很难调试。 在C++中,编译器会通过两种方式来实现类型的隐式转换: 1、使用隐式类型转换符,即关键词operator之后加上一个类型名称,如operator ... 阅读全文
posted @ 2014-03-13 16:09 勇者行天下 阅读(739) 评论(0) 推荐(2) 编辑