为什么有的申明要用到new

LuckyNT 2007-02-14 07:32:21
一个很基础的问题...为什么有的申明要用到new来分配内存空间..
比如说LPPOINT point=new tagPOINT
而有的又用不着比如int n
...全文
316 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
pipa505 2007-02-14
  • 打赏
  • 举报
回复
同意楼上两位说法,
new的是指针指向的变量
jixingzhong 2007-02-14
  • 打赏
  • 举报
回复
指针类型,
如果需要指向一个新的对象,
那么需要分配指针指向的空间。

和 int n 一样,
LPPOINT point 这个语句也分配的 point 本身的空间,
但是它是一个指针,
只有自己的空间可能不足,
那么需要new 一个 LPPOINT 对象,
然后 point 指向这个对象。

请注意,
new 的不是 point 本身的空间,
是 point 这个指针指向的对象的空间, 这个指向的对象是新的,
需要new,
如果这个指向的对象是已有的,
那么就不需要new 了,
比如:
tagPOINT test;
LPPOINT point=&test; //赋值一个已有对象地址,不需要new 了 ~
lidongri 2007-02-14
  • 打赏
  • 举报
回复
LPPOINT point=new tagPOINT
而有的又用不着比如int n
======================
用结构体的形式来解释的话n是int结构体的一个对象
而LPPOINT 是一个指针,可以查看msdn
指针要使用的话必须要申请空间和初始化

还有,int是系统的内置类型
sankt 2007-02-14
  • 打赏
  • 举报
回复
运行时分配内存
zhangyisc 2007-02-14
  • 打赏
  • 举报
回复
关注中!

33,321

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧