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
Por qué el compilador no ve la diferencia entre int y color.
Si redefino una función, me regaña (dice que tengo cuidado de mezclar los pedales).
Si sólo hubiera parámetros por defecto, pero no hay ambigüedades, sólo hay que definir el tipo del parámetro pasado y seguir adelante.Por qué el compilador no ve la diferencia entre int y color.
Anulo una función, jura (dice que cuidado con mezclar los pedales).
Si sólo hubiera parámetros por defecto, pero no hay ambigüedades, sólo hay que definir el tipo del parámetro pasado y listo.En este caso, el compilador se queja de que has creado dos funciones con el mismo nombre, y los parámetros que pasas no tienen nada que ver.
En ese caso, lea lo que significa la palabra "sobrecarga".
SZ así como la"sobrecarga de funciones".
Una pregunta a la fraternidad de escritores, no un error o un fallo, sino una pregunta que puede sugerir...
Quiero obtener el nombre del puntero dentro de la clase pero no funciona.
En general, la esencia del asunto es que quiero que el nombre de la cadenadel objeto gráfico se asigne automáticamente.
Quiero obtener un nombre de cadena para él automáticamente.
Cuando se instala el objeto gráfico desde el método de la clase, el nombre debería asignarse automáticamente en función del cursor.
Todavía no sé cómo hacerlo, creo que podemos hacerlo desde cero.
En teoría, hay dos formas principales de nombrar automáticamente un objeto (con diversas variaciones sobre el tema, al implementarlo):
1. La generación de nombres se basa en una lista numerada
Una clase separada se encarga de la denominación del objeto, y mantiene los "numeradores" (que pueden ser para todos los objetos o para un grupo específico de objetos).
En este caso, el nombre se forma a partir de (preferentemente): tipo de objeto, nombre del símbolo (par de monedas), notación textual de TF y número de serie del objeto (tomado del numerador).
En este caso, dependiendo de la implementación, se puede rastrear la presencia del objeto en el gráfico, y no se puede.
2. El nombre se forma en base a la fecha y hora de creación del objeto.
El nombre bajo este enfoque puede formarse sobre la base de: tipo de objeto, nombre de símbolo, notación de texto TF y clave (formada sobre la base de la fecha y la hora).
PS
En la primera variante (en mi opinión) sería más razonable implementar en la clase y el ciclo completo de gestión de objetos (creación, modificación y eliminación)...
En ese caso, lea lo que significa "sobrecarga".
ZS Bueno, así como la"sobrecarga de funciones".
No sabía que esto era posible.
El polimorfismo y la sobrecarga de funciones son principios básicos de la programación orientada a objetos que deberían estar presentes en cualquier lenguaje que se precie.
PolimorfismoEl polimorfismo es un fenómeno que se produce cuando una función (método) con el mismo nombre corresponde a un código de programa diferente (código polimórfico) según el objeto de clase que se utilice para llamar al método. El polimorfismo se asegura cambiando la implementación del método de la clase ancestral en la clase descendiente con la preservación obligatoria de la firma del método. Esto asegura que la interfaz de la clase padre se conserva sin cambios y permite la vinculación de un nombre de método en el código con diferentes clases - el método con el nombre dado se toma del objeto de la clase desde la que se hace la llamada. Este mecanismo se denomina enlace dinámico (o tardío), a diferencia del enlace estático (temprano), que se realiza en tiempo de compilación.
Sobrecarga de funcionesSobrecarga de procedimientos y funciones: una oportunidad para utilizar los subprogramas con el mismo nombre: procedimientos o funciones en los lenguajes de programación.
Ejemplo de la biblioteca estándar de clases comerciales, clase CAccountInfo:
Me pasé mucho tiempo hablando con el respetado MetaQuotes y demostrándoles que tenían un fallo, y me dijeron que no había ningún fallo.
Sin embargo, me mantuve firme y me aconsejaron que preguntara a la comunidad.
Así, tenemos un indicador y un Asesor Experto que toma los valores del indicador.
Inicio de la prueba en EURUSD del 01.07.2010 al 02.07.2010 en М1
Miramos el registro y vemos que los valores de un buffer cambian, y el otro no.
Esto dura una hora y luego el segundo buffer está vivo, pero si miras los valores del indicador no coincide.
Incluso intenté cambiar la cuenta y volver a cargar el historial, pero no sirvió de nada.
Aquí hay un enlace a mi terminal en rar 90mbhttp://dl.dropbox.com/u/6290215/MetaTrader%205%201111.rar, todo está configurado allí
Y el indicador con el asesor en el archivo adjunto
Por qué el compilador no ve la diferencia entre int y color.
Anulo una función, jura (dice que cuidado con mezclar los pedales).
De acuerdo, habría parámetros por defecto, pero no hay ambigüedades, sólo hay que definir el tipo del parámetro pasado y seguir adelante.Ha proporcionado el código con un error. Naturalmente, este es su código que da información errónea. Al mismo tiempo, has ignorado nuestros comentarios sobre la corrección de errores, ofreciendo cada vez un nuevo código y cada vez con un error.
Sin embargo, si me hubieras dicho que no debería haber sincronización y que deberíamos incorporarla al código...
En cambio, te obstinaste en decir que todo coincide.
pero TimeToString(time[0],TIME_DATE|TIME_MINUTES)," buf1-",buf1[1]," buf2-",buf2[1]) en lugar de TimeToString(time[1],TIME_DATE|TIME_MINUTES)," buf1-",buf1[1]," buf2-",buf2[1]);
esto es ciertamente un error, pero no afecta al punto.
Una vez más me inventaré un indicador para comprobar lo equivocado que estaba.
Es decir, decías que todo coincide y has corregido el código del Asesor Experto. Pero en realidad no coincide nada y habría que arreglar el código del indicador (para integrar la sincronización en él).