From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,47def5aa7b3182bd X-Google-Attributes: gid103376,public From: Matthew Heaney Subject: Re: How to write TYPECASE in Ada 95? Date: 1999/02/06 Message-ID: #1/1 X-Deja-AN: 441449602 Sender: matt@mheaney.ni.net References: <79fct8$9k3$1@murdoch.acc.Virginia.EDU> <0JJEkbcU#GA.219@pet.hiwaay.net> NNTP-Posting-Date: Sat, 06 Feb 1999 12:17:38 PDT Newsgroups: comp.lang.ada Date: 1999-02-06T00:00:00+00:00 List-Id: Matthew Heaney writes: > Note that there's another way to illustrate these concepts, that does > not require heap. Just use a declare block to declare each new kind of > point, as follows: Here is yet another way to do this, by declaring the objects to be type Point'Class. This is probably closer to David's original example. Like my earlier post, the example here doesn't require the use of heap. with Ada.Text_Io; with Ada.Unchecked_Deallocation; with Points; use Points; procedure Test_Points is begin declare P : Point'Class := Tall_Point'(3.0, 4.0, 5.0); begin Points.Show_Type (P); Points.Show_Properties (P); end; declare P : Point'Class := Painted_Point'(3.0, 4.0, Points.Blue); begin Points.Show_Type (P); Points.Show_Properties (P); end; end Test_Points;