zoukankan      html  css  js  c++  java
  • vbs实现c++的vector

    代码(待更新):

    class Vector
        Private length
        Private data()
        Sub Class_Initialize()
            length=0
        End Sub
        '插入元素'
        public Function Add (byval x)
            length=length+1
            redim preserve data(length-1)
            data(length-1)=x
        End Function
        '快速展示'
        public Function display()
            dim i
            dim s
            for i=0 to length-1
                s=s & cstr(data(i)) & " "
            next
            msgbox s
        End Function
        '返回大小'
        public Function size()
            size= length
        End Function
        '获取元素'
        public Function getAt (byval pos)
            if pos<0 or pos>length-1 then 
                getAt=0
                exit Function
            end if
            getAt=data(pos)
        End Function
        '删除元素'
        public Function delAt (byval pos)
            if pos<0 or pos>length-1 then exit Function '注意退出函数的表达式'
            dim i
            for i=pos to length-2
                data(i)=data(i+1)
            next
            length=length-1
        End Function
        '插入元素'
        public Function insert (byval pos,byval elem)
            if pos<0 or pos>length-1 then exit Function 
            dim i
            length=length+1
            redim preserve data(length-1)
            for i=length-1 to pos+1 step -1
                data(i)=data(i-1)
            next
            data(pos)=elem
        End Function
    end class

    调用:

    set v = new Vector
    v.Add 1
    v.Add 2
    v.Add 3
    v.display
    v.delAt 0
    v.insert 1,555
    v.display

     完整代码:

    class Vector
    	Private length
    	public data()
    	Sub Class_Initialize()
    		length=0
    	End Sub
    	'插入元素'
    	public Function Add (byval x)
    		length=length+1
    		redim preserve data(length-1)
    		data(length-1)=x
    	End Function
    	'快速展示'
    	public Function display()
    		dim i
    		dim s
    		for i=0 to length-1
    			s=s & cstr(data(i)) & " "
    		next
    		msgbox s
    	End Function
    	'返回大小'
    	public Function size()
    		size= length
    	End Function
    	'获取元素'
    	public Function getAt (byval pos)
    		if pos<0 or pos>length-1 then 
    			getAt=0
    			exit Function
    		end if
    		getAt=data(pos)
    	End Function
    	'删除元素'
    	public Function delAt (byval pos)
    		if pos<0 or pos>length-1 then  '注意退出函数的表达式'
    		dim i
    		for i=pos to length-2
    			data(i)=data(i+1)
    		next
    		length=length-1
    		redim preserve data(length-1)
    	End Function
    	'插入元素'
    	public Function insert (byval pos,byval elem)
    		if pos<0 or pos>length-1 then exit Function 
    		dim i
    		length=length+1
    		redim preserve data(length-1)
    		for i=length-1 to pos+1 step -1
    			data(i)=data(i-1)
    		next
    		data(pos)=elem
    	End Function
    end class
    
    
    public Function extendProcess (byval exe,byval arr) '程序名、数组'
    	dim i
    	dim cmd
    	cmd=exe
    	For i=0 To ubound(arr)
    		cmd=cmd & " " & arr(i)
    	Next
    	dim objShell	'执行命令'
    	Set objShell = CreateObject("Wscript.Shell")
    	objShell.Run(cmd)
    	'读入输出文件val.txt'
    	Set fs = CreateObject("Scripting.FileSystemObject")
        Set file = fs.OpenTextFile("val.txt", 1, false)
        info=file.readall
        file.close
        set fs=nothing 
        '处理信息'
        extendProcess=split(info)	'用空格分隔'
    End Function
    
    set v = new Vector
    v.Add 1
    v.Add 3
    v.Add 5
    v.Add 4
    v.Add 6
    v.Add 4
    v.Add 7
    v.Add 8
    ans=extendProcess("mysort",v.data)	'如果函数有返回,就必须要有括号。如果无返回,并且参数数目大于1,不能带括号'
    set v2 = new Vector
    for each x in ans
    	v2.Add x
    next
    v2.display
    
    ' dim objShell
    ' Set objShell = CreateObject("Wscript.Shell")
    ' objShell.Run("%comspec% /k ipconfig /all")
    
  • 相关阅读:
    xStream完美转换XML、JSON
    遍历Map的四种方法(转)
    MyEclipse下的svn使用(转)
    tomcat部署,tomcat三种部署项目的方法
    Linux常用命令大全
    MAP
    (转)数据库索引作用 优缺点
    MySql 总结
    python中easygui的安装方法
    python中easygui的安装方法
  • 原文地址:https://www.cnblogs.com/TQCAI/p/8874535.html
Copyright © 2011-2022 走看看