Errores, fallos, preguntas - página 1037

 
A100:
¿Quieres decir que si se descarga la .dll también se pierden todos los datos? Lo probé - pero no encontré pérdida de datos - probablemente de alguna manera el sistema entiende que no hay necesidad de descargar en algún momento

Me refiero a que las variables externas se vinculan en tiempo de compilación.

DLL (y mql-library) no se compilan con el programa principal, por lo tanto no se puede enlazar. Fallo de Stringo, en principio, debería haber un error en tiempo de compilación. Existe, es obvio.

https://www.mql5.com/ru/docs/basis/variables/externvariables

Variables externas

La palabra clave extern se utiliza para declarar identificadores de variables como identificadores de una clase de memoria estática con vida global. Tales variables existen desde el momento de la ejecución del programa y la memoria se asigna e inicializa para ellas inmediatamente después de que comience la ejecución del programa.

Se pueden crear programas compuestos por varios archivos fuente, para ello se utiliza la directiva del preprocesador #include. Las variables declaradas como externas con el mismo tipo e identificador pueden existir en diferentes archivos fuente del mismo proyecto.

Cuando secompila todo el proyecto, todas las variables externas con el mismo tipo e identificador se asocian a la misma zona del pool de memoria de variables globales. Las variables externas son útiles para la compilación por separado de los archivos fuente. Las variables externas pueden ser inicializadas, pero sólo una vez - la existencia de varias variables externas inicializadas del mismo tipo y con el mismo identificador es inaceptable.

 
zfs:
La variable se inicializa 2 veces, al menos elimine este error primero y utilice la nueva variable para el cálculo.

https://www.mql5.com/ru/forum/1111/page1053#comment_570931

Líneas numeradas. ¿Qué línea en qué archivo - eliminar?

 
A100:

https://www.mql5.com/ru/forum/1111/page1053#comment_570931

Líneas numeradas. ¿Qué línea en qué archivo - eliminar?

La línea 20 es la principal y será visible en todas partes.
 
zfs:
línea 20 básicamente y será visible en todas partes.
Eliminado
10 //test.mq5
20
30 #import "testLib.ex5"
40          void f();
50 #import
60 void OnStart()
70 {
80         e1 = 10;
90         f();
100 }
No compila e1 - identificador no declarado, que se espera.
 
zfs:
Parece que se lo prometieron en septiembre).

No, no estaba al tanto de septiembre.

La aplicación en Service Desk se cerró - dijeron que se arregló en la siguiente build. Aquí, en el foro, también, no vio nada.

Bueno, no importa, gracias por la información.

Общайтесь с разработчиками через Сервисдеск!
Общайтесь с разработчиками через Сервисдеск!
  • www.mql5.com
Ваше сообщение сразу станет доступно нашим отделам тестирования, технической поддержки и разработчикам торговой платформы.
 
A100:
EliminadoNo compilado e1 - identificador no declarado, que se espera.

en mqh sacarlo y conectarlo a ambos archivos

 
zfs:

en mqh sacar y conectar a ambos archivos

Lo saqué, lo conecté.

https://www.mql5.com/ru/forum/1111/page1053#comment_569138

el resultado no cambia.

 
A100:

Lo saqué, lo conecté.

https://www.mql5.com/ru/forum/1111/page1053#comment_569138

El resultado es el mismo

¿Qué tiene que ver TestLib con esto?

Empecemos por el otro extremo. Dígame, ¿qué resultado quiere obtener? ¿Qué quiere conseguir? Punto por punto.

 
stringo:

Empecemos por el otro extremo. Dígame, ¿qué resultado quiere conseguir? ¿Qué quiere conseguir? Punto por punto.

Quiero una variable que pueda ser leída y escrita en múltiples módulos .ex5
 
A100:
Quiero obtener una variable que pueda ser leída y escrita en múltiples módulos .ex5
Crear una global.