Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen de largo. En ninguna parte sin ti - 6. - página 951

 
borilunad:

Entonces no se normalizará y puede provocar un error. ¿Por qué no está contento con un precio normalizado más preciso?

No sé, parecía un error :)) Pero si es más preciso, entonces por supuesto que es mejor usar esto, el precio más preciso. Gracias, me has ayudado.
 
Hay una función WindowIsVisible() que muestra el estado de la subventana - visible o no.
¿Cómo puedo hacer invisible una subventana del indicador, preferiblemente desde el código? (si es posible)
 
void OnStart()
  {
string s = "";
double p = 0;
         p = Point;
         p = NormalizeDouble(p, Digits);
         s = DoubleToString (p);
         Alert(s);  
  }

Quería que Alert mostrara el valor de puntos normalizado. Pero devuelve 0,00001000, ¿debería normalizarse después de la función NormalizeDouble?

 
JoinDoe:

Quería hacer que Alert mostrara el valor de los puntos normalizados. Pero devuelve 0,00001000, ¿debería normalizarse después de la función NormalizeDouble?

DoubleToStr() ayudaría
 
Vinin:
DoubleToStr() le ayudará
Gracias, me ha servido de ayuda. ¿Pero qué pasa si necesito hacer operaciones matemáticas con Point? Cuando es emitido por Alert, emite un número de 16 dígitos 1e-005.0. Después de la normalización es 0,00001000. Para visualizarla, tenemos que convertirla en forma de cadena, pero no se pueden realizar operaciones aritméticas con una cadena. ¿Cómo puedo cortar los 3 ceros adicionales del final y seguir realizando operaciones matemáticas?
 
JoinDoe:
Gracias, eso ayuda. ¿Pero qué pasa si necesito hacer operaciones matemáticas con Point? Cuando se emite por Alerta, se emite un dígito hexadecimal 16 1e-005.0. Después de la normalización, es 0,00001000. Para visualizarla, tenemos que convertirla en forma de cadena, pero no se pueden realizar operaciones aritméticas con una cadena. ¿Cómo puedo cortar los 3 ceros adicionales del final y seguir realizando operaciones matemáticas?

¿Y por qué te molestan los ceros de más?

Almacenar y mostrar números son cosas ligeramente diferentes

 
JoinDoe:
Gracias, eso ayuda. ¿Pero qué pasa si necesito hacer operaciones matemáticas con Point? Cuando se emite por Alerta, se emite un número de 16 dígitos 1e-005.0. Después de la normalización, es 0,00001000. Para visualizarla, tenemos que convertirla en forma de cadena, pero no se pueden realizar operaciones aritméticas con una cadena. ¿Cómo podemos hacer que se corten 3 ceros de más al final y que se puedan seguir realizando operaciones matemáticas?
No es necesario hacer nada con él. Úsalo tal cual. 1e-005 es una forma de notación exponencial. El número en sí no cambia dependiendo de la forma en que se muestre.
 
Hay un buffer de indicador en el código, que se utiliza para dibujar una línea en el gráfico.
Después de N barras esta línea ya no es necesaria, pero el indicador sigue consumiendo memoria.

Tengo una pregunta: si simplemente anulo los valores del buffer para las barras que exceden de {0-N} -
¿se liberará memoria?

 
atztek:
En el código hay un buffer indicador que se utiliza para dibujar una línea en el gráfico.
Cuando pasan N barras, esta línea ya no es necesaria, pero el indicador sigue consumiendo memoria.

Tengo una pregunta - si solo pongo a cero los valores del buffer para las barras fuera de {0-N} -
¿llevará a la liberación de la memoria?

No
 
Vinin:
No
¿Estoy en lo cierto al suponer que la única forma de evitar que los búferes de los indicadores se excedan en la memoria es
para asignar inicialmente algún rango para ellos (por ejemplo, de 0 a 2000) y no excederlo?
Razón de la queja: