c++.net中gcnew的问题
在c++.net编程中,每个变量都要使用gcnew进行初始化吗?
[解决办法]
不是,例如int变量就不需要初始化
[解决办法]
全局引用变量必须gcnew
[解决办法]
不是,gcnew用于创建托管代码。
只要是托管类型的代码才能用gcnew,例如String ^str=gcnew String("Hello");
非托管类型的用new,例如int *iSum=a;
(在vc++.net中String是托管型代码,int不是。)
不管是哪一种,都要用delete清除
[解决办法]
打错了,是int *iSum=new int;
*用来表示非托管指针,用new创建
^用来表示托管指针,用gcnew创建
所以两者用玩后要用delete清除,要不然是有内存泄露的。
[解决办法]
参考
[解决办法]
有没好的资料可以学习下
[解决办法]
学习了,谢谢chenjf59
[解决办法]
谢谢了,很实用
[解决办法]
gcnew创建的对象,不用自己delete释放,它是由GC托管了。