c语言这new是什么作用 ?

c语言这new是什么作用 


慕盖茨4494581
浏览 767回答 2
2回答

暮色呼如

new是C++中用于动态内存分配的运算符,在C语言中一般使用malloc函数。有三种用法:new operator、operator new、placement new1)new operator:new operator是最常见的用法,如 Emp* e1 = new Emp;(Emp是一个类) 这里new有两种作用:分配空间、初始化对象(调用了构造函数)2)operator new:operator new作用是只分配空间,不调用构造函数,如:Emp* e2 = (Emp*)operator new(sizeof(Emp));3)placement new:placement new作用是在已分配好的空间上初始化对象,不分配空间,调用拷贝构造函数,如:new ((void *)e2) Emp(*tb1);

慕桂英546537

C语言中“new”是一个关键字,同时也是操作符。当我们使用关键字new在堆上动态创建一个对象时,它实际上做了三件事:获得一块内存空间、调用构造函数、返回正确的指针。当然,如果我们创建的是简单类型的变量,那么第二步会被省略。
打开App,查看更多内容
随时随地看视频慕课网APP