为了账号安全,请及时绑定邮箱和手机立即绑定

这种指针如何理解

1.

coordinate *p11 =NULL;

p11 = new coordinate;

2.

coordinate *p11 =NULL;

*p11 = new coordinate; 

*p11 不是看做对象吗,为什么第二种是错的


正在回答

4 回答

int a =2;

int *p=&a; 这里*号表示声明;声明p是一个指针变里 ,p的值为&a.。这里&是取地址符

*p =2;这里*号 是解引用运算符 意思是返回指针所指的对象。你可以理解为 p是藏宝图 *p 是宝藏。


0 回复 有任何疑惑可以回复我~

*表示解引用,定义是的*是跟着前面的类型走的;列如: (int *) p = new int; 这个*是为了声明而出现。实际时p=new int; 而非*p = new int; 

单独时*p,解引用取内容的,p保存的地址,*p保存内容。

0 回复 有任何疑惑可以回复我~

我还要琢磨琢磨

0 回复 有任何疑惑可以回复我~

new coordinate分配的是一个地址,必须将其赋值给一个指针p11,不能直接单独一个式子赋给*p11,只能在定义时才能赋给*p11,如coordinate *p11=new coordinate。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C++远征之封装篇(下)
  • 参与学习       70919    人
  • 解答问题       514    个

封装--面向对象三大特征之一,通过案例让C++所学知识融会贯通

进入课程

这种指针如何理解

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信