终于发现了程序的问题

原创 2006年06月21日 19:15:00

今天忙了一天,在我足够的细心和耐心的强攻下,终于发现了程序的问题.

问题出在一个模拟堆栈的类上,程序如下:

using System;
using System.Collections;
using System.Text;

namespace Arithmetic
{
 public class Stack
 {
  /// <summary>
  /// 用ArrayList模拟堆栈
  /// </summary>
  private ArrayList myStack;
  
  /// <summary>
  /// 初始化
  /// </summary>
  public Stack ()
  {
   myStack = new ArrayList();
  }

  /// <summary>
  /// 入栈
  /// </summary>
  /// <param name="o">入栈对象</param>
  public void Push ( object o )
  {
   myStack.Add(o);
  }

  /// <summary>
  /// 出栈
  /// </summary>
  /// <returns>返回对象</returns>
  public object Pop ()
  {
   int count = myStack.Count - 1;
   if (count < 0)
   {
    throw new Exception("栈空");
   }
   object o = myStack[count];
   myStack.Remove(o);//问题所在
   return o;
  }

  /// <summary>
  /// 判断栈空
  /// </summary>
  /// <returns>bool值</returns>
  public bool IsEmpty ()
  {
   return (myStack.Count == 0);
  }

  /// <summary>
  /// 返回栈顶对象
  /// </summary>
  /// <returns> 返回栈顶对象</returns>
  public object TopItem ()
  {
   int count = myStack.Count - 1;
   if (count < 0)
   {
    throw new Exception("栈空");
   }
   object o = myStack[count];
   return o;
  }
 }
}

当我用这个类模拟堆栈时,其它地方没有错,就是在出栈时,用的是Remove(o),这个方法是删除第一个匹配的项,所以,当栈中有相同的项时,出栈就会出错,把它改为:

myStack.Removeat(count)  就ok了

真Unity3d_亲自做了一次之后,终于发现了为什么那么多烂游戏,那么多新手引导

其实我倒不很讨厌现在的游戏,页游有讨厌过,也没玩过,而且过去了,也不是太在意。现在的手游,很火的如阴阳师,王者荣耀这些,和以前的游戏不同那是正常的,毕竟社会是一直变化中,玩家也和以前的玩家不同了,就算...
  • avi9111
  • avi9111
  • 2017年06月21日 17:37
  • 1042

终于发现了 Delphi2005 的“Unable to Create Process”是怎么回事

经过多次的安装-删除-在安装 D2005,总算搞明白了为什么我新建一个工程点“运行”,却说“Unable to Create Process”,不准我调试,差点没疯掉。现在总算知道是为什么了。只要工程...
  • e_wsq
  • e_wsq
  • 2012年02月03日 12:30
  • 683

今天在给同事改程序的时候,发现了java中Runtime

在java项目中调用c++的一个exe程序,在如何知道这个程序是否结束上产生了分歧,然后我也悲剧了(以为c++必须有个回值) 代码如下: String path=Thread.currentThre...

发现了一个CSDN前端页面的兼容问题

今天第一天创建了CSDN博客,本着互相学习交流的心态,在这里码字··· 在犹豫着笔写啥好的时候,一不小心动了以下浏览器,就一不小心的发现了CSDN页面的一个兼容性问题。那就从这个小问题开始吧··· ...

在经营景城网过程中,发现了很多自身存在的问题,五十四句关于人性的些许总结,惊醒自己,也警示别人。

我缺少的东西:简单粗暴,直接有效。 1、一个人炫耀什么,说明内心缺少什么 2、一个人越在意的地方,就是最令他自卑的地方。  3、人都有以第一印象定好坏的习惯,认为一个人好时,就会爱屋及乌...
  • nailwl
  • nailwl
  • 2011年09月25日 22:01
  • 1508

7_13发现了一个小问题为啥在do_line函数里赋值语句在变量定义语句之前就会报错?

1.在变量定义之前出错: R*_*G:vim 7_13.c   1 #include "apue.h"   2 #include   3 #define TOKEN 5   4 void ...

今天发现了css中的一个顺序问题

这几天正在自学中。。。 今天发现一个顺序的问题,之前自学的时候没有看过谁讲这个问题。 这个demo是关于轮播图的 HTML Title ...

今天发现了一点小问题(有关byte)

今天在敲代码的时候,用到了byte这一数据类型.用完之后我才发现,其实我并不了解他。 贴一个我敲的代码。 package Dawn; public class test { public stati...

Android开发问题记录(一)——启动Eclipse报错:发现了以元素 'd:skin' 开头的无效内容

启动Eclipse报错:发现了以元素 ‘d:skin’ 开头的无效内容本系列文章主要记录在 Android 开发时所遇见问题以及解决方法的记录。本文记录并解决的问题: 启动Eclipse报错:发现了以...

discuz伪静态的小问题及修正,不知道您发现了没

群聊中,提到了dz的伪静态,突然想起来以前对所维护的dz论坛的伪静态做了小调整,这里拿出来分享下 欢迎您继续收看友声网卡卡北的原创“软文”! 如图所示: 在版块第二页,0...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:终于发现了程序的问题
举报原因:
原因补充:

(最多只允许输入30个字)