🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: es.comp.os.linux.programacion
Article #10317

Re: variables static en C++

#10317
From: cusquejo
Date: Thu, 07 Mar 2002 11:14
47 lines
3248 bytes
"Jose Antonio" <pepehd@hotmail.com> escribi� en el mensaje
news:20020307084809.10c7b0f1.pepehd@hotmail.com...
> On Thu, 07 Mar 2002 00:53:17 +0100
> Manuel Dom�nguez Dorado <pepotemix@mixmail.com> wrote:
>
> > En la fecha Mon, 04 Mar 2002 16:34:56 GMT, "fgs" <NoSpam@ono.com> le
> > endi�� a las teclas y sali� lo siguiente:
> >
> > >Tengo una clase A de la que se derivan varias clases A1, A2, ...An. Me
> > >interesa saber cuantos elementos tengo de cada clase Ai, para lo que
> > >pongo una variable static int contador en cada Ai y una funci�n static
> > >void SumaUno() en cada Ai tambi�n.
> >
> > A no ser que sepas de antemano cuantas clases derivadas de A vas a
> > tener, no se puede hacer de forma est�tica.
> >
> > Te puedes construir una lista enlazada *ListaDeContadores en la
> > superclase, y que cada subclase registrara en dicha lista a la clase
> > que pertenece y el n�mero que es. (Que l�o)
> >
> > O sea: una lista en la superclase definida como static y en el
> > constructor de cada una de las subclases Ai un m�todo que accediera a
> > esta lista, nodo por nodo, viera si existe una entrada Ai y si existe,
> > incrementara el valor del contador en dicho nodo y si no (si es la
> > primera instancia de la subclase Ai), crease un nodo para llevar a
> > partir de ese momento la contabilidad de la subclase Ai.
> >
> > �Me he expicado bien? Al ser din�mica la lista, evitar�as el problema.
> >
> > ��Pero no lo he probado!!
>
> El n�mero de clases se tiene que saber de antemano forzosamente �no?. En
> los includes tienes que definir todas las clases, �c�mo se van a crear
> clases de forma din�mica? Son los objetos los que se crean de forma
> din�mica, las clases estan predefinidas, asi que ese A1...An esta
> predefinido y se sabe cual es, luego con el que sea la lista dinamica no
> tendr�a mucho sentido ya que ni se crean ni se destruyen clases en tiempo
> de ejecucion.
>
> No se si hay algun tipo de opcion en C++ que permita hacer esto, yo por lo
> menos no lo hab�a visto nunca.
>
> Saludos.

se puede hacer utilizando plantillas (templates)

salu2
Technical Details
Message-ID: <a67htj$3h6$1@cabezon.cpd.uva.es>
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!newsfeed.stanford.edu!logbridge.uoregon.edu!news.rediris.es!news.uva.es!not-for-mail
References: <QmNg8.7787$sZ4.110654@news.ono.com><3kad8ugul2rqgnuehk5me4bpeabpp2n89r@4ax.com> <20020307084809.10c7b0f1.pepehd@hotmail.com>

Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII
X-Google-Thread: f86c8,fcde9a39b2616cdc
X-Google-Attributes: gidf86c8,public
X-Google-ArrivalTime: 2002-03-07 03:14:55 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!newsfeed.stanford.edu!logbridge.uoregon.edu!news.rediris.es!news.uva.es!not-for-mail
From: "cusquejo" <cusquejo@cusquejo.coj>
Newsgroups: es.comp.os.linux.programacion
Subject: Re: variables static en C++
Date: Thu, 7 Mar 2002 12:14:54 +0100
Organization: Universidad de Valladolid - Spain
Lines: 49
Message-ID: <a67htj$3h6$1@cabezon.cpd.uva.es>
References: <QmNg8.7787$sZ4.110654@news.ono.com><3kad8ugul2rqgnuehk5me4bpeabpp2n89r@4ax.com> <20020307084809.10c7b0f1.pepehd@hotmail.com>
NNTP-Posting-Host: 2l010x17.tel.uva.es
X-Trace: cabezon.cpd.uva.es 1015499507 3622 157.88.128.242 (7 Mar 2002 11:11:47 GMT)
X-Complaints-To: abuse@uva.es
NNTP-Posting-Date: Thu, 7 Mar 2002 11:11:47 +0000 (UTC)
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 5.50.4522.1200
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200