subject_35273.htm

来自「一些关于vc的问答」· HTM 代码 · 共 12 行

HTM
12
字号
<p>
序号:35273 发表者:flyingdonkey 发表日期:2003-04-05 10:22:25
<br>主题:关于模板
<br>内容:我定义了一个栈的模板<BR>用的是visual c++ 6。0的编译器<BR>可是,在左边的work space里边<BR>的类下边显示不出来,类里边的成员函数<BR>这是为什么呢??<BR>#include &lt;iostream.h&gt;<BR><BR>#include &lt;stdlib.h&gt;<BR><BR>#include &lt;stdio.h&gt;<BR><BR>#define Maxsize 20<BR><BR>template &lt;class Type&gt;<BR>class Mystack<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;public:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Mystack();<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;void Push(Type);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bool Pop();<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bool Isempty();<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bool Isfull();<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Type&nbsp;&nbsp;Gettop();<BR>&nbsp;&nbsp;&nbsp;&nbsp;private:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Type *top;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Type *base;<BR>};<BR><BR>template &lt;class Type&gt; <BR>Mystack&lt;Type&gt;::Mystack()<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;base=new Type[Maxsize+1];<BR>&nbsp;&nbsp;&nbsp;&nbsp;top=base;<BR>}<BR><BR>template &lt;class Type&gt; void Mystack &lt;Type&gt;::Push(Type x)<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;if(!Isfull())<BR>&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;top++;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*top=x;<BR>&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;else <BR>&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout&lt;&lt;"the stack is full!\n"&lt;&lt;flush;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;exit(0);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp; <BR>}<BR><BR>template &lt;class Type&gt; bool Mystack&lt;Type&gt;::Pop()<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;if(!Isempty())<BR>&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;top--;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return 1;<BR>&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;else <BR>&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout&lt;&lt;"the stack is empty!";<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return 0;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;}<BR>}<BR><BR>template &lt;class Type&gt; bool Mystack&lt;Type&gt;::Isempty()<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;return top==base;<BR>}<BR><BR>template &lt;class Type&gt; bool Mystack&lt;Type&gt;::Isfull()<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;return (top-base)==Maxsize;<BR>}<BR><BR><BR>template &lt;class Type&gt; Type Mystack&lt;Type&gt;::Gettop()<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;return *top;<BR>}
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:xiongli 回复日期:2003-04-05 10:49:53
<br>内容:正常
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>

⌨️ 快捷键说明

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