当前位置: 首页 > 图文教程 > 网络编程 > ASP > vbs(asp)的栈类

ASP
货币大写转换函数的更新
断开的数据库连接的一个例子
本函数计算两个时间的差
一个防止外部数据提交的脚本
一个取图片尺寸的类,支持jpg,gif,png
我在桌面上删帖子
IIS5.0中EXECUTE的巧用
一个简单的SQL语句执行器
ip限制函数
对一篇很长的文章做到完美的分页输出
ADO连接数据库字符串大全(VP,Excel,文本,Sybase,.NET等)
不用询问关闭一个独立的窗口代码
如何正确显示数据库中的图片
精彩OUTLOOK 2000组件放送
基于WEB系统的多语言支持--ASP国际化多语言详细方案
将你的网站设置为客户的信任站点--WSH方案
优化Web数据库页面
浅谈 ASP 程序的编程与优化
认识和优化 connection 对象
多个域名绑定一个空间互不影响

ASP 中的 vbs(asp)的栈类


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 47 ::
收藏到网摘: n/a

用js可以用array对象很容易的实现栈的功能,但在vbs中没有相应的功能,没办法,只有自己动手了:(
  如果你的栈不了解请查看数据结构的相关内容。这个栈类是参照c++的栈类写的,用法一样。用这个类你也可以很方便的修改出队列的类:)

<%
'**********************************************
' vbs栈类
' push(string)进栈
' getTop取栈顶元素
' pop去掉栈顶元素
' isempty是否栈空
' isfull是否栈满(pMax设置了大小,可自行修改)
'
' 木鸟 2002.10.10
' http://www.aspsky.net/
'**********************************************

class Stack
private pArr, pString, pMax
private tab
private sub class_initialize()
tab=chr(9)
pMax=1000 '最大容量
end sub
private sub class_terminate()
if isarray(pArr) then
erase pArr
end if
end sub

public function push(str)
if str<>"" and instr(str,tab)<1 and not Isfull then
if isarray(pArr) then
pString=join(pArr,tab)
end if
pString=pString & tab & str
pArr=split(pString,tab)
push=true
else
push=false
end if
end function

public function GetTop()
if not isarray(pArr)<0 then
GetTop=null
else
if ubound(pArr)<0 then
GetTop=null
else
GetTop=pArr(Ubound(pArr))
end if
end if
end function

public function Pop()
if not isArray(pArr) then
Pop=false
else
if Ubound(pArr)<0 then
Pop=false
else
pString=join(pArr,tab)
pString=left(pString,inStrRev(pString,tab)-1)
pArr=split(pString,tab)
Pop=true
end if
end if
end function

public function Isempty()
if not isArray(pArr) then
Isempty=true
else
if Ubound(pArr)<0 then
isempty=true
else
isempty=false
end if
end if
end function

public function Isfull()
if not isArray(pArr) then
Isfull=false
else
if ubound(pArr)<pMax then
Isfull=false
else
Isfull=true
end if
end if
end function
end class
%>