PDA

Ver la Versión Completa : $ifdef define1 OR define2 hay alguna forma de hacer un OR ?


fcios
30-05-2008, 17:20:20
Utilizo Delphi 7

Teniendo 2 defines por ejemplo define1 y define2 previamente definidas o no

Hay alguna forma de utilizar un OR ?

por ejemplo

{$IFDEF define1 OR define2}
ShowMessage('sentencias a procesar');
{$ENDIF}

esto no da error pero no funciona si define1 NO está definida

una forma "fea" de hacerlo es la siguiente

//{$DEFINE define1}
{$DEFINE define2}

{$IFDEF define1}
ShowMessage('sentencias a procesar');
{$ENDIF}

{$IFDEF define2}
{$IFnDEF define1}
ShowMessage('sentencias a procesar');
{$ENDIF}
{$ENDIF}

pero teniendo mas de 2 lugares donde se debe verificar realmente esta solución es muy poco elegante

muchas gracias anticipadas

Casimiro Notevi
30-05-2008, 19:45:11
Creo que no se puede:
http://www.delphibasics.co.uk/RTL.asp?Name=$Define

Al González
31-05-2008, 20:01:32
Una solución elegante sería definir un nuevo símbolo basado en la existencia de los otros dos, y desde ese momento usar el nuevo símbolo para tus $IfDef. Es algo común en algunas bibliotecas de componentes hechas para varias versiones de Delphi.

Espero te sirva de orientación.

¡Saludos!

Al González. :)

fcios
01-06-2008, 01:42:16
Muy bueno, Muchas Gracias !!