Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
Expet:
Duck, tienes una biblioteca. Por supuesto, habrá diferentes variables. Lo que se pretende es conectar mqh a través de include.
En C++, los externos sólo se describen en las bibliotecas de inclusión, de lo contrario el compilador no le permitirá compilar el proyecto
externo:
el includer se insertará en el cuerpo del programa cuando lo compile. si quiere describir una instancia allí, ocurrirá lo mismo.
alternativamente, podrías describir una clase o estructura externa con el modificador ;)
En C++, los externos se describen en las bibliotecas de inclusión, de lo contrario el compilador no le permitirá compilar el proyecto.
La forma habitual de llamar a una biblioteca es utilizar "#include" como nombre del archivo
...
El punto de esto es que el includer se insertará en el cuerpo del programa al compilar, si quieres describir una instancia allí, lo mismo sucederá.
El objetivo es permitir que el archivo enlazable se maneje independientemente de todo el proyecto, para compilarlo por separado y así comprobar si hay errores.
El objetivo es poder trabajar en un archivo de complemento independientemente de todo el proyecto, para compilarlo por separado y así comprobar si hay errores.
Creo que estamos buscando el punto en el que simplemente no existe.
el externo se mantuvo por compatibilidad con miles de códigos escritos anteriormente y la ayuda fue escrita por un tipo que copió parte de la información de la wiki.
Creo que buscamos un significado donde no lo hay.
imho, extern se mantuvo para la compatibilidad de miles de códigos escritos anteriormente, y la ayuda fue escrita por una persona que copió parte de la información de wiki
Entonces, ¿cuál es el veredicto de los Señores)? Si escribo un programa .mq5 con .mqh (#include), puedo escribir con seguridad extern y no temer consecuencias inesperadas (como hice en mql4) o usar input ?
Depende de los fines. Tienen propósitos diferentes.
¿Cuál es el veredicto señores)? Si escribo un programa .mq5 con .mqh (#include), ¿puedo escribir extern con seguridad y no temer consecuencias inesperadas (como hice en mql4) o debo seguir usando input?
Utiliza las construcciones estándar de los programas MQL: toda la entrada al principio del código, luego todo el include. Así es como están escritos los ejemplos y el 99% del código en codobase, y no te llevarás ninguna sorpresa.
Una vez más acerca de extern - se pueden cambiar durante la ejecución del programa, pero en mi opinión es una mala práctica, por lo general todas las variables externas en OnInit () se copian en sus variables y luego trabajar con ellos (como un ejemplo de expertos que trabajan para 4 caracteres y 5 caracteres - ejemplos de este diseño en la red toneladas)
Y la línea de fondo - no utilice extern, si usted modifica el código antiguo, sustituirlo por el de entrada y el compilador le ayudará con advertencias si había un registro en extern - usted debe arreglarlo
Por cierto, he descubierto que al compilador no le importa que pueda volver a declarar el contenido del enum como una variable
Por cierto, he descubierto que al compilador no le importa que pueda volver a declarar el contenido del enum como una variable
¿qué pasa si declaro una variable enum?
conversión enum implícita tst1.mq5 24 17
también puede comprobar EnumToString()
Creo que el tipo sin variables declaradas fue simplemente expulsado de la compilación como no utilizado