Login | Register   
RSS Feed
Download our iPhone app
Browse DevX
Sign up for e-mail newsletters from DevX

By submitting your information, you agree that devx.com may send you DevX offers via email, phone and text message, as well as email offers about other products and services that DevX believes may be of interest to you. DevX will process your information in accordance with the Quinstreet Privacy Policy.

Tip of the Day
Language: VB5,VB6
Expertise: Intermediate
Jul 21, 2001



Building the Right Environment to Support AI, Machine Learning and Deep Learning

CStack - a class module for implementing Last-In-First-Out (stack) structures

'  The CSTACK class
' Usage:
'    Dim st As New CStack
'    ' push two values on the stack
'    st.Push 1234
'    st.Push 4567
'    ' display number of elements in the stack
'    Debug.Print "Count = " & st.Count
'    ' peek at the element on top of stack
'    Debug.Print "Peek = " & st.Peek
'    ' print the elements on the stack while popping them
'    Do While st.Count
'        Debug.Print "TOS item = " & st.Pop
'    Loop

' this is the collection that holds the values
Dim colValues As New Collection

' add a new value onto the stack
Sub Push(value As Variant)
    colValues.Add value
End Sub

' Pop a value off the stack - raise error if stack is emtpy
Function Pop() As Variant
    Pop = colValues.Item(colValues.Count)
    colValues.Remove colValues.Count
End Function

' Return the value on top of the stack, without popping it
' raise error if stack is empty
Function Peek() As Variant
    Peek = colValues.Item(colValues.Count)
End Function

' Return the number of values in the stack
Function Count() As Long
    Count = colValues.Count
End Function
Francesco Balena
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



Thanks for your registration, follow us on our social networks to keep up-to-date