注册 登录
编程论坛 C++教室

请教关于C++的基础问题

tenglvjun 发布于 2007-07-17 15:23, 443 次点击

#include<iostream>
using namespace std;

class X
{

private:

int a;

public:

X () : a(0) {}

X(int i) : a(i)
{
cout << "Creamting" << endl;
}

~X() {}

void show()
{
cout << a << endl;
}

void* operator new (size_t sz)
{
cout << "Creating" << endl;

void* x = new X(sz);

return x;
}

void operator delete(void *x)
{

cout << " deleting" << endl;

delete x;
}

};

int main()
{
X* m;

m = new X(5);

delete m;

return 0;
}
中的
void* operator new (size_t sz)
{
cout << "Creating" << endl;

void* x = new X(sz);

return x;
}

void operator delete(void *x)
{

cout << " deleting" << endl;

delete x;
}
都是无限嵌套函数么?,为什么啊?
请大侠帮我解释下好么?小弟在这里谢谢大家了

1 回复
#2
aipb20072007-07-17 15:48
无限嵌套函数???
这还多新鲜的名词,这里就是把new和 delete重载,增加了一个注释输出说明,没有这么多大道理的。
仔细理解理解吧!
1