Compartir a través de


Consideraciones sobre macros de GDL

Las macros GDL tienen ámbito y duración. Solo se puede hacer referencia a macros desde el punto de definición hasta el final del nivel de anidamiento que contiene la construcción de definición de macro.

Una macro que se define en el nivel raíz tiene un ámbito y una duración ilimitados. Se pueden definir varias macros con el mismo nombre en el mismo espacio de nombres. Las definiciones más recientes ocultan las definiciones anteriores. Las definiciones anteriores se detectarán después de que expire la definición más alta.

Si una definición de macro de bloque usa una directiva #Includes para incluir un archivo precompilado, el contenido del archivo no aparecerá en la definición de macro porque los archivos declarados como precompilados no se usan en línea, sino que se convierten en entidades independientes.

Para la compatibilidad con versiones anteriores, la compatibilidad con valores de parámetro está habilitada para todas las definiciones de macros de valor.

Una definición de macro no puede hacer referencia a sí misma. Sin embargo, una referencia de macro puede pasar una referencia a sí misma como parámetro.

En el ejemplo de código siguiente se muestra cómo pasar una referencia.

*InsertBlock:  Myself(Myself(AnotherMacro))