⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 subject_21762.htm

📁 一些关于vc的问答
💻 HTM
字号:
<p>
序号:21762 发表者:烂木头 发表日期:2002-11-20 11:11:31
<br>主题:急!!!!一个重载new的问题(代码) ---- please help me!!!
<br>内容:#include &lt;iostream.h&gt;<BR>#include &lt;iomanip.h&gt;<BR><BR>#define HEAPSIZE 2048<BR>char heap[HEAPSIZE];//数据段中的堆<BR>char *hp=heap;//堆指针<BR>char *after=&amp;heap[HEAPSIZE];//堆尾+1指针<BR><BR>class MRClass<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;friend ostream&amp; operator&lt;&lt;(ostream&amp;,MRClass&amp;);<BR>public:<BR>&nbsp;&nbsp;&nbsp;&nbsp;MRClass(int X):x(X){}<BR>&nbsp;&nbsp;&nbsp;&nbsp;void *operator new(size_t size);<BR>private:<BR>&nbsp;&nbsp;&nbsp;&nbsp;int x;<BR>};<BR><BR>ostream&amp; operator&lt;&lt;(ostream&amp; os,MRClass &amp;c)<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;cout&lt;&lt;'['&lt;&lt;c.x&lt;&lt;']'&lt;&lt;endl;<BR>&nbsp;&nbsp;&nbsp;&nbsp;return os;<BR>}<BR><BR>void * MRClass::operator new(size_t size)<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;if(size==0) return 0;<BR>&nbsp;&nbsp;&nbsp;&nbsp;char *p=hp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;while(size--)<BR>&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(hp==after)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hp=p;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return 0;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hp++;<BR>&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;return p;<BR>}<BR><BR>int main()<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;MRClass *mark=new MRClass(1);<BR>&nbsp;&nbsp;&nbsp;&nbsp;cout&lt;&lt;"*mark=="&lt;&lt;*mark;<BR>&nbsp;&nbsp;&nbsp;&nbsp;return 0;<BR>}<BR>2002-11-20 15:31:55

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -