Errores, fallos, preguntas - página 2199
![MQL5 - Lenguaje de estrategias comerciales para el terminal de cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
Los objetos temporales no suelen borrarse inmediatamente, sino al final del contexto. En C++, si no me equivoco, esto está recogido en el estándar.
Si quieres un borrado rápido, controla el contexto.
Realmente tendrá que hacer operador =
Gracias. SD ha dicho que tiene previsto arreglar el comportamiento actual, pero no se ha fijado ningún plazo.
Líneas de color (niveles) al previsualizar (no se imprimió, pero probablemente también en la impresión) gráficos para imprimir en blanco y negro.
Terminal Bild 1795
Windows 7 64.
Si inicio la optimización y la interrumpo después de 30 minutos, el terminal se cuelga y no hay forma de detenerlo.
Hay 8 agentes de MetaTester64 en el Administrador de Tareas.
Después de eso no puedo iniciar el terminal. Tengo que esperar o reiniciar el ordenador.
¿Es así para todos?
¿Qué pasa con el foro otra vez? El día ha comenzado y la desaceleración irreal ha comenzado. Las páginas se cargan rápido entonces durante unos 30 segundos.
rkn, supongo... Hay problemas con los pushers en otros servicios... es como si telegram funcionara a través de ellos...
Al estar fuera de Rusia, el sitio web sigue colgándose a veces. Pero lo tengo desde hace meses. Estoy acostumbrado.
Gracias. Resulta que el objeto de retorno y "=" al definir un objeto pasan por un constructor adicional.
De hecho, me gustaría ver una tabla clara en algún lugar, qué casos se llaman constructores (y cuáles), y cuáles se llaman operadores. Ahora mismo todo está a nivel de intuición, y falla, claro.
Es mejor que no confíes demasiado en ninguna regla específica, los compiladores pueden optimizar estas cosas con bastante libertad (rvo, nrvo, copy elision, quizás algunas otras optimizaciones recorten el exceso con seguridad). El constructor de copia y el operador "igual" deberían hacer lo mismo (no es necesario ponerles un comportamiento diferente). Hay un buen enfoque, llamado "copy-and-swap idiom", si el inglés lo permite, se describe en detalle aquí https://stackoverflow.com/questioncopy-and-swap idioms/3279543/what-is-the-copy-and-swap-idiom.
En resumen, se escribe una función de intercambio que se utiliza en todos los constructores y operadores (reducimos la cantidad de código, y obtenemos el mismo comportamiento, lo que resulta en no preocuparse por lo que el compilador llamará, cortar, sobre-optimizar).
"Las cadenas resaltadas plantean preguntas. ¿Por qué los objetos temporales no se bloquean en cuanto se utilizan? Es decir, antes de la salida de treinta".
Preguntas correctas, creo. Los objetos temporales deberían haber colapsado después de los dos puntos.
ZS: He retocado un poco el código ahí, ya que el constructor de copia (no el de movimiento) es necesario de todas formas. En el caso de µl, el beneficio no es tan obvio debido a la falta de referencias de rvalue.Es mejor no confiar demasiado en ninguna regla específica, los compiladores pueden optimizar estas cosas con bastante libertad (rvo, nrvo, copy elision, tal vez algunas otras optimizaciones que eliminan con seguridad las cosas innecesarias). El constructor de copia y el operador "igual" deberían hacer lo mismo (no es necesario ponerles un comportamiento diferente). Hay un buen enfoque, llamado "copy-and-swap idiom", si el inglés lo permite, se describe en detalle aquí https://stackoverflow.com/questions/3279543/what-is-the-copy-and-swap-idiom.
En resumen, se escribe una función de intercambio que se utiliza en todos los constructores y operadores (reducimos la cantidad de código y obtenemos el mismo comportamiento y como resultado no nos preocupamos por lo que el compilador llama, corta, sobre-optimiza).
"Las líneas resaltadas plantean preguntas. ¿Por qué los objetos temporales no se bloquean en cuanto se utilizan? Es decir, antes de la salida de los treinta".
Preguntas correctas, creo. Los objetos temporales deberían haber colapsado después de los dos puntos.
Gracias, la SD ya ha advertido de los planes de RVO.