📄 subject_21762.htm
字号:
<p>
序号:21762 发表者:烂木头 发表日期:2002-11-20 11:11:31
<br>主题:急!!!!一个重载new的问题(代码) ---- please help me!!!
<br>内容:#include <iostream.h><BR>#include <iomanip.h><BR><BR>#define HEAPSIZE 2048<BR>char heap[HEAPSIZE];//数据段中的堆<BR>char *hp=heap;//堆指针<BR>char *after=&heap[HEAPSIZE];//堆尾+1指针<BR><BR>class MRClass<BR>{<BR> friend ostream& operator<<(ostream&,MRClass&);<BR>public:<BR> MRClass(int X):x(X){}<BR> void *operator new(size_t size);<BR>private:<BR> int x;<BR>};<BR><BR>ostream& operator<<(ostream& os,MRClass &c)<BR>{<BR> cout<<'['<<c.x<<']'<<endl;<BR> return os;<BR>}<BR><BR>void * MRClass::operator new(size_t size)<BR>{<BR> if(size==0) return 0;<BR> char *p=hp;<BR> while(size--)<BR> {<BR> if(hp==after)<BR> {<BR> hp=p;<BR> return 0;<BR> }<BR> hp++;<BR> }<BR> return p;<BR>}<BR><BR>int main()<BR>{<BR> MRClass *mark=new MRClass(1);<BR> cout<<"*mark=="<<*mark;<BR> return 0;<BR>}<BR>2002-11-20 15:31:55
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -