comp.lang.ada
 help / color / mirror / Atom feed
From: dennison@telepath.com (Ted Dennison)
Subject: Re: Beginer problem: variable array size
Date: 17 Sep 2002 07:22:54 -0700
Date: 2002-09-17T14:22:55+00:00	[thread overview]
Message-ID: <4519e058.0209170622.498a17e7@posting.google.com> (raw)
In-Reply-To: am2bq5$8fl$1@nsnmpen2-gest.nuria.telefonica-data.net

"Nacho" <NACHANGA@terra.es> wrote in message news:<am2bq5$8fl$1@nsnmpen2-gest.nuria.telefonica-data.net>...
> That does not resolve the problem. I need to change the size of the array
> after it has been created. With your solution once array_called_p has been
> created it will never change its size.

Why?

Its very rare that someone actually needs to change the size of an
array after it has been created. If you don't know the size of the
array until point X, you can almost always wait to declare the array
until point X. Good Ada code generally declares arrays of the exact
size needed, often as constants. C doesn't let you do this as easily,
so most folk don't do things that way in C. But don't let C's lack of
capability hamstring your Ada code.

Even if you have to work on the array to find its true length (a very
rare occurance), there are ways to declare it properly on the stack
without using any (explicit) dynamic allocation. One of our favorite
tricks here in c.l.a. is using recursive routines that return
unconstrained array types. For an example of this technique, go look
at http://www.adapower.com/lang/recstring.html . This does exactly
what you are trying to do with your example below, except it uses
character arrays, and the step is 256 elements instead of 50.

>  ... preceding Ada statements
>  declare -- scope of array_called_p
>      type my_array_type is array ( positive range <> ) of integer;
>      array_called_p : my_array_type ( 1 .. variable );
>  begin -- scope of array_called_p
>      ... Ada statements that use array_called_p
> 
>     variable := variable+50;    -- We increase the size of the array in 50
> elementes
>     ....    HERE I need array_called_p to increase its size so it can hold
> 50 more elements
> 
>  end; -- scope of array_called_p
>  ... following Ada statements



  parent reply	other threads:[~2002-09-17 14:22 UTC|newest]

Thread overview: 62+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-09-15 14:53 Beginer problem: variable array size Nacho
2002-09-15 16:45 ` Larry Kilgallen
2002-09-15 16:16   ` Nacho
2002-09-15 16:26     ` Ludovic Brenta
2002-09-15 17:46     ` Jeffrey Carter
2002-09-15 18:27     ` Pascal Obry
2002-09-15 20:03     ` Larry Kilgallen
2002-09-17 14:22     ` Ted Dennison [this message]
2002-09-18 11:53       ` Marin David Condic
2002-10-02 15:08         ` Matthew Heaney
2002-10-03 12:17           ` Marin David Condic
2002-09-19  0:43     ` Robert A Duff
2002-09-19  1:25       ` Jeffrey Carter
2002-09-19 14:17       ` Hyman Rosen
2002-09-20  3:06       ` Munch
2002-09-20  4:49         ` Jim Rogers
2002-09-20  6:35         ` tmoran
2002-09-20 16:00           ` Pat Rogers
2002-09-20 16:07             ` Preben Randhol
2002-09-20 20:15               ` Pat Rogers
2002-09-20 12:11         ` Marin David Condic
2002-09-20 13:59           ` Larry Kilgallen
2002-09-20 14:55             ` Hyman Rosen
2002-09-20 16:10               ` Larry Kilgallen
2002-09-20 16:31               ` Warren W. Gay VE3WWG
2002-09-24 12:41                 ` Thomas Dickey
2002-09-21 10:44               ` Thomas Dickey
2002-09-23 13:37                 ` Hyman Rosen
2002-09-22 13:00               ` Marin David Condic
2002-09-26  3:37                 ` Kevin Cline
2002-09-26 12:42                   ` Marin David Condic
2002-09-22 12:49             ` Marin David Condic
2002-09-20 16:28           ` Warren W. Gay VE3WWG
2002-09-20 17:49             ` Hyman Rosen
2002-09-21  7:30               ` Preben Randhol
2002-09-23 13:41                 ` Hyman Rosen
2002-09-22  3:34               ` Ted Dennison
2002-09-22 13:18             ` Marin David Condic
2002-09-24 16:55               ` Warren W. Gay VE3WWG
2002-09-25 12:06                 ` Marin David Condic
2002-09-21 22:23           ` tmoran
2002-09-23 13:53             ` Hyman Rosen
2002-09-23 15:19               ` Chad R. Meiners
2002-09-23 16:00                 ` Hyman Rosen
2002-09-23 17:09               ` tmoran
2002-09-23 18:18                 ` Hyman Rosen
2002-09-23 19:53                   ` tmoran
2002-09-23 20:32                     ` Hyman Rosen
2002-09-23 20:10                 ` Dennis Lee Bieber
2002-09-23 23:09                   ` tmoran
2002-09-24  2:33                     ` Dennis Lee Bieber
2002-09-24 12:36               ` Marin David Condic
2002-10-02 15:13       ` Matthew Heaney
2002-09-19 20:25     ` Brian Gaffney
2002-09-17 10:20 ` Georg Bauhaus
2002-10-02 15:04 ` Matthew Heaney
2002-10-02 16:26   ` Preben Randhol
2002-10-02 19:53     ` Matthew Heaney
2002-10-03 12:31       ` Marin David Condic
2002-10-03 15:15         ` Matthew Heaney
2002-10-21 23:38           ` Matthew Heaney
2002-10-22 14:11     ` Matthew Heaney
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox