C++ CLR中的 “^”是什么意思,代表什么?
1个回答
展开全部
C++/CLI中使用gcnew关键字表示在托管堆上分配内存,并且为了与以前的指针区分,用^来替换* ,就语义上来说他们的区别大致如下:
1)gcnew返回的是一个句柄(Handle),而new返回的是实际的内存地址;
2)gcnew创建的对象由虚拟机托管,而new创建的对象必须自己来管理和释放。
当然,从程序员的角度来说,管它是句柄还是什么其他的东西,总跑不掉是对某块内存地址的引用,实际上我们都可以理解成指针。
1)gcnew返回的是一个句柄(Handle),而new返回的是实际的内存地址;
2)gcnew创建的对象由虚拟机托管,而new创建的对象必须自己来管理和释放。
当然,从程序员的角度来说,管它是句柄还是什么其他的东西,总跑不掉是对某块内存地址的引用,实际上我们都可以理解成指针。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询