Características del lenguaje mql5, sutilezas y técnicas - página 216
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
ZS: También he visto macros como
No lo entiendo.
No lo entiendo.
hay mucha información en internet sobre la conveniencia de una macro de este tipo, googlea "macro mientras 0"
https://russianblogs.com/article/9410298326/
Hubo un ejemplo de while(0) en este hilo hace mucho tiempo
https://www.mql5.com/ru/forum/170952/page141#comment_12897922
Para que quede claro, es sólo para estática (todo esto es sobre C++). Para las variables locales, si hay un c-tor de usuario, no hay anulación.
Me ha gustado la explicación en sí, que no contradice en absoluto a la OOP.
Cuando se crea un objeto de estructura simple, ocurre lo siguiente:
Cuando la declaración pasa por {}, se inserta otra entre los elementos 1-2 - llenando la memoria asignada con ceros.
Con esta lógica, la POO no se resiente en absoluto. Es un mecanismo válido.
Cuando se declara {}, se inserta otro entre los puntos 1-2 - llenando la memoria asignada con ceros.
Con esta lógica, la POO no se resiente en absoluto. Mecanismo válido.
La lógica se resiente aquí: ¿por qué necesitamos ponerlo a cero si después habrá un constructor de todas formas?
La propia lógica se resiente aquí: ¿por qué poner a cero si después habrá un constructor de todos modos?
Porque una estructura con un constructor no puede ser utilizada en una unión.
Para la unión sólo inicializa el primer miembro, intercambia los campos y la prueba se ejecutará.
Pensemos si vale la pena cambiar el comportamiento para convertirse en lo que la mayoría de los usuarios esperan.
Considera que he cambiado - ahora compruebo el primer término para x[i].i == 0 (antes la condición era x[i].x == 0.0)
Resultado: falso
Y con ZeroMemory - true
hay mucha información en internet sobre la conveniencia de una macro de este tipo, googlea "macro mientras 0"
https://russianblogs.com/article/9410298326/
Todo este lío es sólo para poner un punto y coma al final de una macro. Yo uso llaves en todas las macros y no tengo problemas.
Considera que he cambiado - ahora compruebo el primer término para x[i].i == 0 (antes la condición era x[i].x == 0.0)
Resultado: falso
Y con ZeroMemory - verdadero.
Sí. Error de mql
(y en C++ devuelve true).