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

Coordinate *p = new Coordinate 是定义了一个指针还是一个指针数组?

Coordinate *p = new Coordinate 是定义了一个指针还是一个指针数组?

正在回答

2 回答

Coordinate *p = new Coordinate();是一个指针

Coordinate *p = new Coordinate[3];是一个指针数组


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

严格来说,这既不是一个指针,也不是一个数组,只是一片或多片连续的堆空间而已,刚开始指针类型*p空间是未知的,它由new方法,开辟一个连续的空间,以便数据存储或访问。只是这片空间由符号p进行表示而已。p+1 p+2 ...只是多个这样类似的连续的空间。而在c语言中指针数组是不连续的空间,malloc开辟的空间数组名不能代替数组首元素地址。其空间也是固定的,很容易造成实际存储的元素大小大于预设的空间长度。

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

举报

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

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

进入课程

Coordinate *p = new Coordinate 是定义了一个指针还是一个指针数组?

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号