Campeonato de optimización de algoritmos. - página 2

 
Dmitry Fedoseev:

Para el campeonato, la clase tendrá que situarse en una biblioteca. Haga una función en la biblioteca, que será llamada desde fuera, esta función hará todo: crear una instancia de la clase, establecer todos los parámetros pasados a la función, etc.

El nombre de la función es estándar para todos. Cada uno tiene sus propios nombres de archivo de la biblioteca.

El comprobador tiene un guión. El comprobador cambia el nombre de la biblioteca importada, compila y ejecuta.

Debería ser aún más simple, sin clases en el script de ejecución. Sólo las funciones importadas con una llamada de la biblioteca *.ex5 con un nombre estándar, en la biblioteca, el participante escribe la interfaz de llamada estándar, y es libre de hacer lo que quiera dentro. Esto facilita la comprobación tanto de los verificadores como de los espectadores, sólo hay que cambiar el archivo de la biblioteca y no recompilar cada vez.
 
Реter Konow:
¿Cree que puede prescindir de la POO para resolver el problema planteado en el campeonato? Estoy acostumbrado a resolver todo con mi propio método. (Bueno, no me gusta la OOP). :)
Seguro que sí, pero sería interesante conocer su opinión.
 
Реter Konow:
¿Cree que puede prescindir de la POO para resolver el problema planteado en el campeonato? Estoy acostumbrado a resolver todo por mi propio método. (Bueno, no estoy en OOP.) :)

Puedes hacerlo. Debe proporcionar una biblioteca compilada con una función (con un nombre determinado). Todo lo demás que hagas y cómo lo hagas en esa biblioteca depende de ti (funciones o POO).

Excepto que la función investigada estará en un objeto, pero eso no debería ser un problema, es un mínimo OOP. Aunque parece que ahora en mql hay punteros a funciones, pero no lo he mirado. Es Andrei quien debe decidir.

 
Реter Konow:
Seguro que sí, pero me interesaría saber tu opinión.
Puedes hacerlo. Por eso creo que hay que conformarse sólo con las funciones importadas. Este es el mínimo necesario de habilidades prácticas para la participación. Y en la librería del algoritmo se puede utilizar tanto OOP como no OOP, de la forma que se quiera y a quien más le convenga.
 
Dmitry Fedoseev:

Puedes hacerlo. Debe proporcionar una biblioteca compilada con una función (con un nombre determinado). Todo lo demás que hagas y cómo lo hagas en esa biblioteca depende de ti (funciones o POO).

Excepto que la función investigada estará en un objeto, pero eso no debería ser un problema, es un mínimo OOP. Aunque parece que ahora en mql hay punteros a funciones, pero no lo he mirado. Es Andrei quien debe decidir.

Indicadores de funciones... Leeré la documentación. Todo lo que necesito saber es la esencia de la tarea en cuestión. Si la OOP no es necesaria, lo resolveré con mi propio método. Gracias.
 
¿Dónde en la ayuda sobre los punteros de función, quién sabe?
 

Mañana intentaré mostrarte un ejemplo. Hoy no estoy en condiciones de escribir nada en el código.

Sugerir para la discusión, al final es necesario llegar a una solución común simple - conectar el algoritmo de optimización no debe causar problemas a nadie.

 
Andrey Dik:
Debería ser aún más simple, sin clases en el script de ejecución. Sólo las funciones importadas con una llamada de la biblioteca *.ex5 con un nombre estándar, en la biblioteca, el usuario escribe la interfaz de llamada estándar, y es libre de hacer lo que quiera dentro. Esto facilita la comprobación tanto de los verificadores como de los espectadores, sólo hay que cambiar el archivo de la biblioteca y no es necesario volver a compilar cada vez.

¿Cómo se da una función a un miembro? Entonces tal vez tenga que importar la función de alguna biblioteca en su biblioteca. Para mí, es más fácil con una clase. El miembro tiene un parámetro en la función:

CFF * aff

Su uso es lo más sencillo posible:

aff.value(...)

Es mucho más fácil de importar y no hay necesidad de molestarse con archivos innecesarios.

 
Andrey Dik:
Puedes hacerlo. Por eso creo que hay que conformarse con las funciones importadas únicamente. Este es el mínimo necesario de habilidades prácticas para la participación. Y en la librería del algoritmo, se puede utilizar tanto OOP como no OOP, de la forma que se quiera y a quien más le convenga.
Estoy familiarizado con la importación de funciones. Es familiar y claro. Pero no he hecho ninguna biblioteca en mql. Sólo la dll. Pero creo que probablemente sea más fácil. De todos modos, estoy empezando a prepararme.
 
Dmitry Fedoseev:

¿Cómo se da una función a un miembro? Entonces tal vez tenga que importar la función de alguna biblioteca en su biblioteca. Para mí, es más fácil con una clase. El miembro tiene un parámetro en la función:

CFF * aff

Su uso es lo más sencillo posible:

aff.value(...)

Es mucho más fácil importar y no te molestes con archivos innecesarios.

La biblioteca *.ex del miembro debería ser esencialmente una forma unificada de referirse a su algoritmo. El algoritmo puede ser bordado en la biblioteca estándar, o el algoritmo puede ser llamado desde la biblioteca usando funciones propias.

¿Y qué función dar al participante? ¿El participante se lo dará o le pasará algo? Juego de palabras, no te entiendo del todo.