sewardj | 99a2ceb | 2007-11-09 12:30:36 +0000 | [diff] [blame] | 1 | #include <stdlib.h> |
2 | |||||
3 | class Class1 | ||||
4 | { | ||||
5 | public: | ||||
6 | Class1(char *cpointer = NULL) : p(cpointer){}; | ||||
7 | ~Class1() | ||||
8 | { | ||||
9 | if(p) | ||||
10 | { | ||||
11 | free(p); | ||||
12 | } | ||||
13 | }; | ||||
14 | |||||
15 | private: | ||||
16 | char *p; | ||||
17 | }; | ||||
18 | |||||
19 | Class1 function1(void) | ||||
20 | { | ||||
21 | Class1 c((char *)malloc(64)); | ||||
22 | |||||
23 | return c; | ||||
24 | } | ||||
25 | |||||
26 | void function2(void) | ||||
27 | { | ||||
28 | Class1 c = function1(); | ||||
29 | |||||
30 | return; | ||||
31 | } | ||||
32 | |||||
33 | int main(int argc, char* argv[]) | ||||
34 | { | ||||
35 | function2(); | ||||
36 | |||||
37 | return 0; | ||||
38 | } |