devxlogo

CQueue – a class module to implement First-In-First-Out (queue) structures

CQueue – a class module to implement First-In-First-Out (queue) structures

'--------------------------------------------------'' The CQUEUE class'    Dim qu As New CQueue''    ' enqueue to items to the queue'    qu.Enqueue 1234'    qu.Enqueue 5678'    ' display number of elements in the queue'    Debug.Print "Count = " & qu.Count'    ' peek at the element about to be read'    Debug.Print "Peek = " & qu.Peek'    ' print the elements in the queue while removing them'    Do While qu.Count'        Debug.Print "next item = " & qu.Dequeue'    Loop'--------------------------------------------------' this is the collection that holds the valuesDim colValues As New Collection' add a new value to the queueSub Enqueue(value As Variant)    colValues.Add valueEnd Sub' read the next value from the queue and remove it' raises and error if the queue is emptyFunction Dequeue() As Variant    Dequeue = colValues.Item(1)    colValues.Remove 1End Function' Return the next value from the queue, without removing it' raise error if queue is emptyFunction Peek() As Variant    Peek = colValues.Item(1)End Function' Return the number of values in the queueFunction Count() As Long    Count = colValues.CountEnd Function' clear the queueSub Clear()    Set colValues = New CollectionEnd Sub

See also  Why ChatGPT Is So Important Today
devxblackblue

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist