设为首页收藏本站

新微赢技术网

 找回密码
 注册
搜索
热搜: 回贴
查看: 873|回复: 1
打印 上一主题 下一主题

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

[复制链接]
跳转到指定楼层
1#
发表于 2009-11-6 01:51:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#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;
}
都是无限嵌套函数么?,为什么啊?
请大侠帮我解释下好么?小弟在这里谢谢大家了
2#
发表于 2009-11-6 01:51:52 | 只看该作者
无限嵌套函数???
这还多新鲜的名词,这里就是把new和 delete重载,增加了一个注释输出说明,没有这么多大道理的。
仔细理解理解吧!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

申请友链|小黑屋|最新主题|手机版|新微赢技术网 ( 苏ICP备08020429号 )  

GMT+8, 2024-11-19 14:25 , Processed in 0.092047 second(s), 8 queries , Gzip On, Memcache On.

Powered by xuexi

© 2001-2013 HaiAn.Com.Cn Inc. 寰耽

快速回复 返回顶部 返回列表