#include<iostream> using namespace std; class Test { private: int x; int y; public: Test(int x = 0, int y = 0) { this->x = x; this->y = y; } void setX(int a) { x = a; } void setY(int b) { y = b; } void destroy() { delete this; } void print() { cout << "x = " << x << " y = " << y << endl; } }; int main() { Test obj; obj.destroy(); obj.print(); return 0; }
Standard input is empty
Standard output is empty
*** Error in `./prog': free(): invalid pointer: 0xbff801b8 *** ======= Backtrace: ========= /lib/i386-linux-gnu/i686/cmov/libc.so.6(+0x75e72)[0xb763ce72] /lib/i386-linux-gnu/i686/cmov/libc.so.6(+0x76bb0)[0xb763dbb0] /usr/lib/i386-linux-gnu/libstdc++.so.6(_ZdlPv+0x1f)[0xb781f82f] ./prog[0x8048767] /lib/i386-linux-gnu/i686/cmov/libc.so.6(__libc_start_main+0xf5)[0xb75e08f5] ./prog[0x8048871] ======= Memory map: ======== 08048000-08049000 r-xp 00000000 08:03 1295711 /home/2FN5ai/prog 08049000-0804a000 rw-p 00000000 08:03 1295711 /home/2FN5ai/prog 08a65000-08a86000 rw-p 00000000 00:00 0 [heap] b75c5000-b75c7000 rw-p 00000000 00:00 0 b75c7000-b7770000 r-xp 00000000 08:03 1303839 /lib/i386-linux-gnu/i686/cmov/libc-2.17.so b7770000-b7771000 ---p 001a9000 08:03 1303839 /lib/i386-linux-gnu/i686/cmov/libc-2.17.so b7771000-b7773000 r--p 001a9000 08:03 1303839 /lib/i386-linux-gnu/i686/cmov/libc-2.17.so b7773000-b7774000 rw-p 001ab000 08:03 1303839 /lib/i386-linux-gnu/i686/cmov/libc-2.17.so b7774000-b7777000 rw-p 00000000 00:00 0 b7777000-b7792000 r-xp 00000000 08:03 1303883 /lib/i386-linux-gnu/libgcc_s.so.1 b7792000-b7793000 rw-p 0001a000 08:03 1303883 /lib/i386-linux-gnu/libgcc_s.so.1 b7793000-b7794000 rw-p 00000000 00:00 0 b7794000-b77d5000 r-xp 00000000 08:03 1303836 /lib/i386-linux-gnu/i686/cmov/libm-2.17.so b77d5000-b77d6000 r--p 00040000 08:03 1303836 /lib/i386-linux-gnu/i686/cmov/libm-2.17.so b77d6000-b77d7000 rw-p 00041000 08:03 1303836 /lib/i386-linux-gnu/i686/cmov/libm-2.17.so b77d7000-b78b3000 r-xp 00000000 08:03 1345926 /usr/lib/i386-linux-gnu/libstdc++.so.6.0.18 b78b3000-b78b4000 ---p 000dc000 08:03 1345926 /usr/lib/i386-linux-gnu/libstdc++.so.6.0.18 b78b4000-b78b8000 r--p 000dc000 08:03 1345926 /usr/lib/i386-linux-gnu/libstdc++.so.6.0.18 b78b8000-b78b9000 rw-p 000e0000 08:03 1345926 /usr/lib/i386-linux-gnu/libstdc++.so.6.0.18 b78b9000-b78c0000 rw-p 00000000 00:00 0 b78c3000-b78c6000 rw-p 00000000 00:00 0 b78c6000-b78c7000 r-xp 00000000 00:00 0 [vdso] b78c7000-b78e6000 r-xp 00000000 08:03 1303796 /lib/i386-linux-gnu/ld-2.17.so b78e6000-b78e7000 r--p 0001f000 08:03 1303796 /lib/i386-linux-gnu/ld-2.17.so b78e7000-b78e8000 rw-p 00020000 08:03 1303796 /lib/i386-linux-gnu/ld-2.17.so bff6d000-bff82000 rw-p 00000000 00:00 0 [stack]