Discusión sobre el artículo "Del básico al intermedio: Directiva Include"

 

Artículo publicado Del básico al intermedio: Directiva Include:

En este artículo, hablaremos de una directiva de compilación ampliamente utilizada en los diversos códigos que puedes encontrar en MQL5. Aunque esta directiva de compilación se explicará aquí de manera bastante básica y superficial, es importante comenzar a entender cómo usarla, ya que pronto será indispensable para avanzar hacia un nivel de programación superior. El contenido expuesto aquí tiene un propósito puramente didáctico. En ningún caso debe considerarse una aplicación cuya finalidad no sea el aprendizaje y el estudio de los conceptos presentados.

Así, en este artículo, veremos un tema que podrá ayudarte bastante. Al menos, una vez que se haya explicado, podré comenzar a mostrar códigos un poco más elaborados. Dado que, hasta este momento, ha sido bastante desafiante para mí crear códigos sin utilizar ciertos recursos disponibles en MQL5. Aunque algunos de ustedes puedan pensar que ha sido fácil para mí, lo cierto es que escribir códigos sin emplear ciertos recursos resulta muy desafiante. Pero ahora, añadiremos algunos elementos a la lista de lo que ya podemos hacer.

El recurso al que me refiero son las directivas de compilación. Sin estas directivas, mucho de lo que podemos lograr queda bastante limitado, obligándonos a escribir mucho más código del que realmente sería necesario en un entorno de programación real.

Las directivas de compilación, contrariamente a lo que muchos podrían pensar, no hacen el código más confuso. Al contrario. Su objetivo principal es simplificar, agilizar y facilitar el manejo y la modificación del código. El problema es que muchos principiantes las ignoran o no se esfuerzan por aprender a utilizarlas de manera adecuada. Quizás porque algunas lenguas de programación no cuentan con este recurso en su repertorio. Algunos ejemplos de lenguas que no poseen directivas de compilación son JavaScript y Python. Aunque son bastante populares entre programadores ocasionales, no son adecuadas para desarrollar ciertos tipos de aplicaciones. Sin embargo, aquí el objetivo no es hablar de dichas lenguas, sino de MQL5. Así que empecemos con lo que será el primer tema de este artículo.


Autor: CODE X

 

Otra vez las tonterias del autor. Quote:" Pero hay algunas directivas en C/C++ que no están disponibles en MQL5. Una de ellas es #ifdef, que aunque pueda parecer poco interesante, en algunos momentos nos ayuda mucho a controlar ciertas partes de la versión en la que estamos trabajando. "

#ifdef ha estado en MQL4 y MQL5 durante mucho tiempo.

#define  PRINT

int OnInit()
{
#ifdef  PRINT
    Print("ifdef en MQL5 es");
#endif     
    return(INIT_SUCCEEDED);
}
 
Alexey Volchanskiy #:

Otra vez las tonterias del autor. Quote:" Pero hay algunas directivas en C/C++ que no están disponibles en MQL5. Una de ellas es #ifdef, que aunque pueda parecer poco interesante, en algunos momentos nos ayuda mucho a controlar ciertas partes de la versión en la que estamos trabajando. "

#ifdef ha estado en MQL4 y MQL5 durante mucho tiempo.

¿Por qué estás leyendo esto? 🤦‍♀️

 
Alexey Volchanskiy #:

Otra vez las tonterias del autor. Quote:" Pero hay algunas directivas en C/C++ que no están disponibles en MQL5. Una de ellas es #ifdef, que aunque pueda parecer poco interesante, en algunos momentos nos ayuda mucho a controlar ciertas partes de la versión en la que estamos trabajando. "

#ifdef ha estado en MQL4 y MQL5 durante mucho tiempo.

Alexey Viktorov #:

¿Por qué estás leyendo esto? 🤦‍♀️

¡¡¡Su apodo en la base es vDev - este es su tema!!!

¡¡¡¡Lekha - vamos a cuero cabelludo prueba!!!! )

 
Alexey Volchanskiy # :

El autor no está haciendo nada nuevo. Cita: " Pero en C/C++ hay algunas directivas que no están en MQL5. Una de ellas es el #ifdef, que, aunque pueda parecer desinteresante, en algunos puntos realmente nos ayuda a controlar ciertas partes de la versión en la que estamos trabajando. "

#ifdef está en MQL4 y MQL5 desde hace mucho tiempo.

Lo siento. Sin embargo, fue un error de mi parte referirme a la directiva en el texto. Mi intención era referirme a la directiva #if, porque la directiva #ifdef es el equivalente de la directiva #if defined presente en C y C++. Pero para generalizarlo aqui en MQL5, usamos #ifdef, que tambien esta presente en C y C++. De nuevo, el propósito será hacer referencia a la directiva #if, que tiene un propósito completamente diferente e incluso se puede utilizar para comprobar los valores de las definiciones. Pero debido a mi error de escritura, acabé poniendo #ifdef y no me di cuenta. Pido disculpas por este descuido por mi parte. 👍

 
CODE X #:

Lo siento. Sin embargo, hubo un error por mi parte al referirme a la directiva en el texto. Mi propósito era hacer referencia a la directiva #if, porque la directiva #ifdef es el equivalente de la directiva #if defined, que está presente en C y C++. Pero para generalizarlo aqui en MQL5, usamos #ifdef, que tambien esta presente en C y C++. De nuevo, el propósito será hacer referencia a la directiva #if, que tiene un propósito completamente diferente e incluso se puede utilizar para comprobar los valores de las definiciones. Pero debido a mi error de escritura, acabé poniendo #ifdef y no me di cuenta. Pido disculpas por este descuido por mi parte. 👍

No pasa nada, cada uno tiene sus momentos )

 
Alexey Viktorov #:

¿Por qué estás leyendo esto? 🤦‍♀️

Me encontré con este artículo por accidente, el sitio lo dio en los enlaces.