listtable.cls

来自「用Visual Basical写的汉诺塔源代码。」· CLS 代码 · 共 56 行

CLS
56
字号
VERSION 1.0 CLASS
BEGIN
  MultiUse = -1  'True
  Persistable = 0  'NotPersistable
  DataBindingBehavior = 0  'vbNone
  DataSourceBehavior  = 0  'vbNone
  MTSTransactionMode  = 0  'NotAnMTSObject
END
Attribute VB_Name = "ListTable"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = False
Private ListSize As Integer
Private E() As ElemType
Private Sub Class_Initialize()
    ListSize = 0
    ReDim E(ListSize)
    Set E(ListSize) = New ElemType
End Sub
Public Sub Append(El As ElemType)
    ListSize = ListSize + 1
    ReDim Preserve E(ListSize)
    Set E(ListSize) = New ElemType
    E(ListSize).SetRecord El
End Sub
Public Function GetLength() As Integer
    GetLength = ListSize
End Function
Public Function GetElem(ByVal n As Integer) As ElemType
    Set GetElem = E(n)
End Function
Public Sub Insert(ByVal n As Integer, ByVal El As ElemType)
    ListSize = ListSize + 1
    ReDim Preserve E(ListSize)
    Set E(ListSize) = New ElemType
    For i = ListSize To n Step -1
        E(i).SetRecord E(i - 1)
    Next i
    E(n).SetRecord El
End Sub
Public Sub Delete(ByVal n As Integer)
    For i = n To ListSize - 1
        E(i).SetRecord E(i + 1)
    Next i
    ListSize = ListSize - 1
    ReDim Preserve E(ListSize)
End Sub
Public Sub Clear()
    ListSize = 0
    ReDim E(0)
End Sub
Private Sub Class_Terminate()
    Erase E
End Sub

⌨️ 快捷键说明

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