1 #include <bits/stdc++.h>
 2 using namespace std;
 3 typedef long long LL;
 4 const int N=1e5+10;
 5 const int INF=0x3f3f3f3f;
 6 int cas=1,T;
 7 struct node{
 8     int *p;
 9     ~node()
10     {
11         cout<<"~node()\n";
12         if(p) delete p;
13     }
14 };
15 int main()
16 {
17     void * a=new float(3.0);
18     printf("%d %d\n",*((int*)a),(int)(*(float*)a));
19     delete a;
20     printf("%d %d\n",*((int*)a),(int)(*(float*)a));
21     a=new long long(3);
22     printf("%d %d\n",*((int*)a),(int)(*(long long*)a));
23     delete a;
24     printf("%d %d\n",*((int*)a),(int)(*(long long*)a));
25     node *b=new node;
26     b->p=new int(4);
27     int *c=b->p;
28     a=b;
29     delete a;
30     printf("p:%p\n",((node*)a)->p);
31     printf("%d\n",*c);
32     return 0;
test.cpp

相关文章: