schmidt@siam.ics.uci.edu (Doug Schmidt) (02/16/89)
Hi, I would appreciate it if a C++ language lawyer would explain whether the following program is valid C++ as defined by the most recent version of cfront (i.e., 2.0). In particular, is it possible to prevent use of ``new'' and ``delete'' outside of the context of class member scope? Also, is it valid for the ``delete'' operator to declare the ``X*'' parameter, or must it use ``void *?'' ---------------------------------------- class X { public: X (int) { ; } private: void *operator new (long sz) { printf ("hello\n"); } void operator delete (X* p) { printf ("goodbye\n"); } }; main () { X* a = new X(1); // Is this incorrect use of private new? delete a; // Is this incorrect use of private delete? } ---------------------------------------- Thanks for your help. Doug Schmidt -- schmidt@ics.uci.edu (ARPA) | Per me si va nella citta' dolente. office: (714) 856-4043 | Per me si va nell'eterno dolore. | Per me si va tra la perduta gente. | Lasciate ogni speranza o voi ch'entrate.