下列哪些运算符函数不能是全局的,即必须是成员函数。 (A) 刚出现的 (B) 删去 (C) 转换运算符 (D) 所有这些 答复: (C) 说明: new和delete可以是全局的,参见下面的示例。
null
#include #include #include using namespace std; class Myclass { int x; public: friend void* operator new(size_t size); friend void operator delete(void*); Myclass(int i) { x = i; cout << "Constructor called "; } ~Myclass() { cout << "Destructor called "; } }; void* operator new(size_t size) { void *storage = malloc(size); cout << "new called "; return storage; } void operator delete(void *p ) { cout<<"delete called "; free(p); } int main() { Myclass *m = new Myclass(5); delete m; return 0; }
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END