Data Types

ID #1017

How correctly to return QUEUE from function and work with it in calling procedure?

No problem. If they return typified queue it is necessary to do something like this:
MAP
  NewMembersList(),*TMembersQueue
END
TMembersQueue QUEUE,TYPE
  Name            STRING(60)
  Desc            STRING(100)
  Index           LONG
END
MembersList   &TMembersQueue
CODE
...
MembersList &= NewMembersList()
IF ~(MembersList &= NULL)
  LOOP Mem# = 1 TO RECORDS(MembersList)
    GET(MembersList,Mem#)
    MESSAGE('Name : ' & MembersList.Name & |
    'Desc : ' & MembersList.Desc & |
    'Index: ' & MembersList.Index)
  END
END
...
IF ~(MembersList &= NULL) THEN DISPOSE(MembersList).
RETURN
NewMembersList PROCEDURE
NewList        &TMembersQueue
CODE
NewList &= NEW(TMembersQueue)
IF ~(NewList &= NULL)
  ... !Fill new queue
END
RETURN NewList
It is the most widespread way of use.

Tags: QUEUE, procedure, return

Related entries:

Last update: 2007-07-16 15:58
Author: Oleg Rudenko
Revision: 1.1

Digg it! Print this record Send to a friend Show this as PDF file
Propose a translation for Propose a translation for
Please rate this entry:

Average rating: 3 out of 5 (3 Votes )

completely useless 1 2 3 4 5 most valuable

You can comment on this entry