博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于指向常量的指针的问题
阅读量:4177 次
发布时间:2019-05-26

本文共 824 字,大约阅读时间需要 2 分钟。

关于指向常量的指针的问题

在图书馆借了《Visual C++面向对象与可视化程序设计》,决定要看完了,下面是刚刚开始,看第一章梳理C++知识的其中一个问题。

  • 在C++中,试图把一个常量的地址赋给一个指针,会产生编译错误。为了解决这个问题,可以定义一个指向常量的指针。
  • 指向const 型对象的指针本身不是一个常量
  • 假如pd是一个指向const double变量的指针,它可以只想任何一个double类型的对象,但通过od所指向的对象不可以通过pd来改变其值
#include 
using namespace std;int main(){ const double d = 3.14; /*① double *pd; pd = &d; //error C2440: '=' : cannot convert from 'const double *' to 'double *' */ const double *pd; pd = &d; //定义一个指向常量的指针,但pd本身不是一个常量 cout << *pd << endl; /*② const double d1 = 3.142; pd = &d1; cout << *pd << endl; //运行成功,说明pd本身确实不是一个常量,它还可以指向其他的常量 */ /*③ *pd = 3.142; cout << d << endl; //error C2166: l-value specifies const object pd是一个指向常量的指针,由pd所指向的对象不可以通过pd来改变其值 */ return 0;}

转载地址:http://iptai.baihongyu.com/

你可能感兴趣的文章
MySQL的索引是什么?怎么优化?
查看>>
2万字长文包教包会 JVM 内存结构
查看>>
不懂 spring 就彻底放弃 Java 吧!
查看>>
从MySQL高可用架构看高可用架构设计
查看>>
可以秒杀全场的SpringCloud微服务电商实战项目,文档贼全!
查看>>
java架构之路(多线程)synchronized详解以及锁的膨胀升级过程
查看>>
java架构之路(多线程)AQS之ReetrantLock显示锁的使用和底层源码解读
查看>>
百度现场面试:JVM+算法+Redis+数据库!(三面)
查看>>
java架构之路(多线程)JMM和volatile关键字
查看>>
创业感悟:技术兄弟为什么一直没有起来
查看>>
(转载)linux命令之十八locate 命令
查看>>
Linux发行光盘(红旗 5.0 SP2发行版,已不使用仅参考)
查看>>
linux下如何将文件打包、压缩并分割成制定大小
查看>>
CentOS6.5升级内核到3.10.28
查看>>
linux内核补丁安装和编译安装
查看>>
(转载)linux命令之十九find 命令
查看>>
(转载)linux命令之二十 find命令之exec
查看>>
(转载)linux命令之二十一find命令之xargs
查看>>
centos下C编程调用libvirt的API访问KVM虚拟机
查看>>
(转载)linux命令之二十四tar命令
查看>>