99问答网
所有问题
当前搜索:
new的内存上再new
c++中不用
new
也能用delete吗? 什么情况下要用new,什么情况下不要用...
答:
首先,new和delete要成对使用,否则会造成
内存
泄漏。什么时候使用new,使不使用完全取决于编程人员。
new的
作用是在堆内存中申请一块内存,并且申请内存的大小可以在程序运行时动态的决定。这个就是堆内存的最大价值之一。因为,于局部变量的栈内存,全局变量和static变量的静态内存都必须在编译阶段确定,在...
c++中,结构体指针可以使用
new
来申请
内存
吗
答:
new
=malloc+default-constructor.1,必须确保结构体里的成员拥有默认构造函数。2,指针变量,你不是给指针开辟
内存
,是开辟内存,把内存地址存在gemfield里。
为什么有的程序用
new
分配
内存
后不用delete释放?它不怕内存泄漏吗?
答:
我可以很负责任的告诉你,使用了
new
是一定要用delete的 不然就会有
内存
泄露 如果你没有看到,那说明可能是你没有找到,其实它用了,只不过在很隐蔽的地方 因为,很多程序都有自己的一套内存管理模块
c++里面开辟
内存
int* p=
new
int[2],实际上却超过了2个int,为什么还能使...
答:
new
是在程序的堆空间开辟空间,程序的堆空间很大,一般不容易出现问题,但是如果你int *p是在栈空间,例如是在 void fun(){ p[2];strcpy(p,"dfasdfasd");} 就会出现问题,代码是在栈空间, 这样操作容易造成缓冲区溢出,另外注意在new以后要记得delete,否则会造成
内存
泄漏,有问题请追问。满意请...
C++通过
new
分配
的内存
需不需要在程序退出前delete?
答:
当然会自动回收。不过就编程本身来说,每个
new
都应该有相应的delete。 这是必要的习惯
华为路由器AX6和AX6
New
区别在哪里?
答:
首先,从硬件性能角度来看,AX6
New
作为后续推出的产品,很可能在处理器速度、
内存
大小、无线芯片等方面进行了升级。这些硬件的提升可以带来更快的数据处理速度,支持更多的设备同时连接,以及更稳定的无线信号。例如,新的无线芯片可能支持更宽的信道带宽,从而提高了无线传输速度。其次,在功能特性上,AX6New...
c++中delete之后的
再new
问题
答:
作为指针型简单变量使用删不删,都可以用,就等于已声明了:int *p;指针本身已有存储单元。
new
int; 是给它分配存放指向数值的单元。delete 只删了 存放指向数值的单元。指针本身单元还在。只要它的使用符合语法,仍然可用。例如:a = 2;b=3;p = &a; printf("%d\n",*p);p = &b; printf("...
malloc和
new的
区别是什么?
答:
1、申请
的内存
所在位置不同
new
操作符从自由存储区(free store)上为对象动态分配内存空间。自由存储区是C++基于new操作符的一个抽象概念,凡是通过new操作符进行内存申请,该内存即为自由存储区。malloc函数从堆上动态分配内存。堆是操作系统中的术语,是操作系统所维护的一块特殊内存,用于程序的内存动态...
C++ char*类型
new的内存
释放出问题了
答:
delete [] q;//释放原来的 delete []p;//释放现在的 '记住:
内存
释放了之后不能再使用该块内存,最好在释放之后将指针变量赋值为空 。delete [] q;q= NULL;C++是在C语言的基础上开发的一种面向对象编程语言,应用广泛。C++支持多种编程范式 --面向对象编程、泛型编程和过程化编程。最新正式...
...如果在一个函数中给他赋值一个用
new
分配的一个堆
内存
答:
如果分配了
内存
,必须在析构函数里面用delete 释放这个成员,否则导致内存泄漏。可以这么写(见注释):class A{ A():p(NULL){} // 在构造时初始化此成员指针的值为NULL ~A(){if(p)delete p;} // 在析构时这么写就可以确保,如果p被分配了内存就释放内存,否则就不用管了 priate void* p;...
棣栭〉
<涓婁竴椤
4
5
6
7
9
10
8
11
12
13
涓嬩竴椤
灏鹃〉
其他人还搜