🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

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

Re: [C++] La misma función con distintos nombres (y comportamiento)

#424
From: Gonzalo Pérez de Olaguer Córdoba
Date: Thu, 13 Mar 2008 10:33
27 lines
2128 bytes
Hola Han Solo <hsolo@escomposlinux.org>
el Thu, 13 Mar 2008 11:01:47 +0100 escribiste:

> Pues no es tan sencillo. El problema de hacerlo así (que ya lo había
> contemplado) es que tengo que cambiar la llamada a la primera
> función en todos los sitios en que ya está programada. En este caso
> concreto, tampoco es tan complicado, pero me interesaba saber si se
> podía hacer de otra forma.

¿No puedes usar defines para implementar los cambios? Algo así:

#define funcion_antigua(...)		funcion_nueva(0,#args)
#define la_otra_funcion_antigua(...)	funcion_nueva(1,#args)

void funcion_nueva (int flag, ...)
{
	// parte común
	if (flag) {
		// sólo para la_otra_funcion_antigua
	} else {
		// sólo para funcion_antigua
	}
}

-- 
Gonzalo Pérez de Olaguer Córdoba <gpoc@iies.es>
PGP key 2861C704 --- F206 5671 6789 425D 111C  1302 214F 1934 2861 C704
Technical Details
Message-ID: <20080313113300.7b088cfb@petres.salonet.snet>
Path: arc1-ca.pugleaf.net!g2news1.google.com!news1.google.com!news.glorb.com!news.antakira.com!cagarruta.escomposlinux.org!hercules.escomposlinux.org!escomposlinux.org!not-for-mail
References: <20080310175215.278cae58@tatooine> <kh9gt3lg71iucof1s3o7n2lt4q9i25od8h@4ax.com> <20080313110147.471fd9fd@tatooine>

Show Full Headers
Complete Article Headers
X-Google-Thread: f86c8,d11cae33929ec158
X-Google-Attributes: gidf86c8,public,usenet
X-Google-Language: SPANISH,ASCII
Path: arc1-ca.pugleaf.net!g2news1.google.com!news1.google.com!news.glorb.com!news.antakira.com!cagarruta.escomposlinux.org!hercules.escomposlinux.org!escomposlinux.org!not-for-mail
From: Gonzalo Pérez de Olaguer Córdoba <gpoc@iies.es>
Newsgroups: es.comp.os.linux.programacion
Subject: Re: [C++] La misma función con distintos
 nombres (y comportamiento)
Date: Thu, 13 Mar 2008 11:33:00 +0100
Organization: escomposlinux.org
Lines: 27
Message-ID: <20080313113300.7b088cfb@petres.salonet.snet>
References: <20080310175215.278cae58@tatooine>
 <kh9gt3lg71iucof1s3o7n2lt4q9i25od8h@4ax.com>
 <20080313110147.471fd9fd@tatooine>
NNTP-Posting-Host: 84.77.244.205
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-15
Content-Transfer-Encoding: quoted-printable
X-Trace: hercules.cohp1 1205404393 10099 84.77.244.205 (13 Mar 2008 10:33:13 GMT)
X-Complaints-To: newsmaster@news-17.escomposlinux.org
NNTP-Posting-Date: Thu, 13 Mar 2008 10:33:13 +0000 (UTC)
X-Newsreader: Sylpheed-Claws 1.0.5 (GTK+ 1.2.10; i486-pc-linux-gnu)