new 运算符的使用

来源:互联网 发布:vidconvert 1.4.5 mac 编辑:程序博客网 时间:2024/04/30 05:08
/*使用NEW运算符在堆中开辟一块新空间,例程如下:
#include <iostream>
using std::cout;
class A
{
public:
A(){cout<<"构造函数执行完毕\n";};
};
int main()
{
A *p;     //声明一个属于A类的指针p
p=new A; //使用new运算符创建一块堆中空间,它的大小由类A的数据成员的类型和数量
//来定,由于堆在内存中都是匿名的,因此这里没有为它命名,只是将它的内存
//地址赋给了指针p


return 0;
}
*/


//使用new运算符创建并实例化一个对象,例程如下:
#include <iostream>
using std::cout;
class A
{
public:
A(int a,int b){i=a;j=b;cout<<"构造函数执行完毕\n";};
void print(){cout<<i*j<<"\n";}
void set(int a,int b){i=a;j=b;}
private:
int i,j;
};
int main()
{
A *p=new A(1,2); //在创建一个对象的同时实例化它的数据成员
p->print();   //输出结果
p->set(7,8);   //利用成员函数访问该对象的数据成员并赋值
p->print();   //输出结果
return 0;
}