new 用来在堆中申请一块内存(供应用程序共用),delete用来释放这块内存。new申请的变量生命周期一直持续到程序退出或者用delete操作符删掉这块内存。
for example:
struct NPC{
float blood;//血量
float magic;//魔法值
int lifeValue;//生命值
}
int *p1 = new int(5);//初始化为5
delete p1 ;
double *p2 = new double(2.22);
delete p2 ;
NPC *p3 = new NPC{98.4,76.0,100};
delete p3 ;
int *P4 = new int[10];
P4[0] = 10;
P4[1] = 11;
delete P4;
1 #include <iostream> 2 using namespace std; 3 4 struct NPC { 5 char Name[20]; 6 int age; 7 bool sex;//男=0,女=1 8 }; 9 int main() { 10 11 int *p1 = new int(5); 12 int *p2 = new int[3]{100,200,300}; 13 NPC *p3 = new NPC{"mk",17,0}; 14 cout << p3->Name <<","<< p3->age << "," << p3->sex << endl; 15 cout << *p1 << endl; 16 cout << *p2 << "," << *(p2+1) << "," << *(p2+2) << endl; 17 //system("pause"); 18 delete p1; 19 delete p2; 20 delete p3; 21 return 0; 22 23 }
浙公网安备 33010602011771号