首页 > 其他 > 详细

隐式类型转换

时间:2017-02-05 21:50:26      阅读:200      评论:0      收藏:0      [点我收藏+]

1.在c和c++中,顶层const在执行对象的拷贝操作时,不受什么影响;但底层const却不容忽视。
顶层const表示指针本身是个常量,底层const表示指针所指的对象是一个常量;
更一般的,顶层const可以表示任意对象是常量。
eg:

1 const int v2=1;//顶层const
2 int v1=v2;//正确,顶层const忽略
3 
4 const int *p=NULL;//底层const
5 int *r=p;//错误,底层const不容忽略

1.1

常量整数0或者字面值nullptr能转换成任意指针类型;指向任意非常量类型的指针的都可以转换成void*;指向任意对象的指针都能转换成const void*.

2.

在大多数用到数组的表达式里,数组自动转化成指向数组首元素的指针。

当数组被用作 decltype关键字修饰或者作为取地址符(&),sizeof以及typeid等运算符的运算对象时,上述转换不会发生。同样的,如果用一个引用来初始化数组,上述转换也不会发生。

隐式类型转换

原文:http://www.cnblogs.com/yangguang-it/p/6368563.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!