新建一个这个类名下的对象。
当使用关键字new在堆上动态创建一个对象时,它实际上做了三件事:获得一块内存空间、调用构造函数、返回正确的指针。当然,如果创建的是简单类型的变量,那么第二步会被省略。
new int;//开辟一个存放整数的存储空间,返回一个指向该存储空间的地址(即指针)
new int(100);//开辟一个存放整数的空间,并指定该整数的初值为100,返回一个指向该存储空间的地址
new char[10];//开辟一个存放字符数组(包括10个元素)的空间,返回首元素的地址
new int[5][4];//开辟一个存放二维整型数组(大小为5*4)的空间,返回首元素的地址
float *p=new float (3.14159);//开辟一个存放单精度数的空间,并指定该实数的初值为//3.14159,将返回的该空间的地址赋给指针变量p
new运算符使用的一般格式为 new 类型 [初值] 用new分配数组空间时不能指定初值。如果由于内存不足等原因而无法正常分配空间,则new会返回一个空指针NULL,用户可以根据该指针的值判断分配空间是否成功。
new是一个函数(只不过比较特殊),他为某一类型数据分配内存 返回这个内存区的指针,C++中的new和c中的malloc不同,new后面加的是 一个类型,类就是一个类型,int,flaot等也是
new GDisplayConfig这句就代表你分配了sizeof( GDisplayConfig)的大小的内存区,返回GDisplayConfig类型的指针以作为函数m_spDisplayConfig.reset的实参
。
new是一个运算符,在堆里面创建一个新的对象:
例如:
它有三种创建方式
new 类名(实参表);
new 类名();
new 类名;
reset 的参数是一个 CGisplayConfig对象的地址 通过new来产生这个空间
新建一个类对象