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
En resumen, cada vez que cambie el valor de un parámetro de usuario, este valor debe convertirse en un valor variable de la unión y guardarse inmediatamente en una matriz de bytes compartida, que luego se puede convertir en uint y escribir en el recurso.
Debe tener un parámetro de usuario dentro de la estructura de la unión. Al cambiar el parámetro, la estructura cambiará con un cambio simultáneo de la matriz int
i[2] es un recurso de usuario que es leído por otro programa.
Con una línea cc.width = 200 cambiará:
- El parámetro responsable de la anchura,
- La estructura que contiene este parámetro,
- El array del recurso que está leyendo el otro programa.
Y aquí no hay conversión ni copia, sólo mapeo.Puedo cambiar las funciones de envoltura en el archivo de propiedades de la conexión y convertir cada valor utilizable en la variable correspondiente de la unión, y hacer una matriz de bytes sobre la marcha. Sin embargo, los valores de texto, que también deben ser pasados, deben ser convertidos a una matriz de bytes utilizandoStringToChar().
Sin embargo, esto elimina el sentido de utilizar una unión. Después de todo, si tengo que usarStringToChar() de todos modos, ¿por qué no ensamblar todo en una cadena y luego traducir toda la cadena a bytes usandoStringToChar()?
Debe tener un parámetro de usuario dentro de la estructura de la unión. Al cambiar el parámetro, la estructura cambiará con un cambio simultáneo de la matriz int
i[2] es un recurso de usuario que es leído por otro programa.
Con una línea cc.width = 200 cambiará:
- El parámetro responsable de la anchura,
- La estructura que contiene este parámetro,
- El array del recurso que es leído por un programa de terceros.
Y aquí no hay conversión ni copia, sólo mapeo.Vasily, te olvidas de que estamos hablando de una comunicación bidireccional. En mi motor, puedo vincular todo a los sindicatos, pero no puedo ser responsable del código del usuario. Sólo se me ocurren envoltorios y los pongo en los plugins.
¿Dónde está la garantía de que el usuario también utilizará los sindicatos? Así que cuando llama a mis funciones de envoltura, tengo que tomar su valor a mí mismo y elenco a una de mis variables de mis uniones dentro de su archivo de plugin.
Puedo cambiar las funciones de envoltura en el archivo de propiedades de la conexión y convertir cada valor utilizable en la variable correspondiente de la unión, y hacer una matriz de bytes sobre la marcha. Sin embargo, los valores de texto, que también deben ser pasados, deben ser convertidos a una matriz de bytes utilizandoStringToChar().
Sin embargo, esto elimina el sentido de utilizar una unión. Después de todo, si tengo que usarStringToChar() de todos modos, ¿por qué no ensamblar todo en una cadena y luego traducir toda la cadena a bytes usandoStringToChar()?
Porque tendrás doble análisis. Convertirás todo en una cadena, lo que es muy lento. Luego se analiza la cadena en un array, lo que es muy rápido. Luego lo ensamblas de nuevo a una cadena - eso es muy rápido. Luego se analiza la cadena en los tipos correctos - eso es muy lento.
De acuerdo, pero ¿qué pasa con los textos?
Hay que convertirlos en bytes medianteStringToChar(). No puedes usar la unión, ¿verdad?
Sí, hay que traducirlos, pero es rápido, a diferencia del análisis sintáctico.
Por ejemplo:
Aquí está la función de envoltura en el archivo depropiedades de conexión:
Esta función se llama así:
Es decir, el usuario establece el valor deClose[2] en una celda de la tabla.
Por lo tanto, dentro de su función envolvente en su programa, puedo representar el valor(Close[2]) como un array de char.
Pero, en la misma celda, el usuario puede enviar el valor "¡Hola! :)", y entonces ¿qué hacer?
Oh, Peter, empezaste con el lenguaje de programación equivocado. Deberías haber aprendido algo no estrictamente escrito.
En general, te he entendido, has inventado tu propio lenguaje no tipado basado en MQL. Has sorteado su tipificación estricta utilizando cadenas. ¡Esto es una maniobra!
Oh, Peter, empezaste con el lenguaje de programación equivocado. Deberías haber aprendido algo no estrictamente escrito.
En general, te he entendido, has inventado tu propio lenguaje no tipado basado en MQL. Has sorteado su tipificación estricta utilizando cadenas. ¡Esto es una maniobra!
Sí,)) ¡Un movimiento con un caballo!
Si utiliza una tabla, debe decidir si quiere que los datos de la tabla sean estrictamente numéricos o textuales. Si se trata de texto, se pasan cadenas. Si es real, su función debe ser así: