home *** CD-ROM | disk | FTP | other *** search
- // ex03006.cpp
- // Home-brew new and delete
- #include <iostream.h>
- #include <stdlib.h>
- #include <stddef.h>
-
- // ------------- overloaded new operator
- static void *operator new(size_t size)
- {
- void *rtn = calloc(1, size);
- return rtn;
- }
-
- // ----------- overloaded delete operator
- static void operator delete(void *type)
- {
- free(type);
- }
-
- main()
- {
- // ------ allocate a zero-filled array
- int *ip = new int[10];
- // ------ display the array
- for (int i = 0; i < 10; i++)
- cout << " " << ip[i];
- // ----- release the memory
- delete ip;
- }