
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
¿Qué pasa con los nombres normales que están en los comentarios?
Por cierto, parece que hay un error en el preprocesador mql.
se expande a 'i nt ll;' y da un error:
'i nt' - undeclared identifier t_t_t.mq4 50 1
En cuanto a los comentarios en la enumeración - supuestamente deben ser movidos hasta el preprocesador C. Por lo tanto, incluso si fuera posible meter un comentario, sería poco probable que tuviera efecto. En el buen sentido, debería cambiar la sintaxis (a _cmnt_, por ejemplo) y cambiar la secuencia de llamada del preprocesador C con el preprocesador que tira de los comentarios. Las perspectivas de tales reformas son poco probables, creo ))
Por cierto, parece que hay un error en el preprocesador mql.
se expande a 'i nt ll;' y da un error:
El ENUM dinámico es de uso interno, la ventana de ajustes no los muestra. Los nombres/comentarios normales no son realmente necesarios
El último método requiere escribir los espacios en blanco manualmente para el enum y la función que devuelve un array de valores. Decidí resolverlo y escribirlo de tal manera que ya no sea necesario. Sin embargo, no se puede compilar en mql, no hay macros con número variable de argumentos, pero teóricamente pueden aparecer. En fin, esto es lo que tengo:
Выхлоп printf:
----enum1-----
1
3
65
90
----enum2-----
100
-3
21
----enum3-----
871
213
226
¡// Código generado para emum1
// enum enum1{
// q = 1,
// e = 3,
// t = 65,
// z = 90,
// };
// unsigned get_enum1_array(int *ar){
// int temp[] = { q, e, t, z, };
// if(ar != NULL)
// for(unsigned i = 0; i < sizeof(temp) / sizeof(int); ++i){
// ar[i] = temp[i]; }
// return sizeof(temp) / sizeof(int);
// }
Artículo sobre este tema http://jhnet.co.uk/articles/cpp_magic. En definitiva, mucha magia, por supuesto. Pero la técnica puede ser útil para una amplia gama de tareas referidas a la generación de código de preprocesador.
He leído el hilo con interés, todo muy chulo con las macros.
No está claro, ¿por qué necesitamos todo este baile con enum? ¿Puede dar un ejemplo práctico?
Está claro lo de la TF, pero ¿qué más?
Sin embargo no se puede compilar en mql, no hay macros con número variable de argumentos, pero teóricamente pueden aparecer.
En MQL5 las macros no sólo tienen un número fijo de argumentos, sino que su número está limitado a 8. Así que puedes hacer un enum para sólo 3 valores.
En cuanto a la apariencia teórica, probablemente será más rápido conseguir una función propia para el análisis sintáctico de enumeraciones, ya que los desarrolladores han prometido hacer algo.
En MQL5 las macros no sólo tienen un número fijo de argumentos, sino que el número de argumentos está limitado a 8. Así que podemos hacer un enum para sólo 3 valores.
En cuanto a la apariencia teórica, probablemente sea más rápido conseguir una función propia para el análisis sintáctico de enumeraciones. Los desarrolladores ya han prometido que se les ocurrirá algo.
Utilizar el método de enumeración propuesto anteriormente mediante un array.
No está previsto ningún iterador para la enumeración de valores del enumerador.
Utilice el método sugerido anteriormente de enumerar valores utilizando un array.