Errores, fallos, preguntas - página 1732

 

No entiendo si esto es un error o debería serlo. Los valores deENUM_CHART_PROPERTY_INTEGER se definen como[UNKNOWN ENUM]:: Por ejemplo:

- CHART_WINDOWS_TOTAL se define como[UNKNOWN ENUM]::101

-CHART_WINDOW_IS_VISIBLE - definido como [UNKNOWN ENUM]::102

Y por supuesto, la funciónChartSetInteger genera el error 4109 - Falso ID de la propiedad del gráfico.

MT5 y ME v1447 versión x64

 
fxsaber:
¿Cómo podemos justificar que const A * == A const *? No lo es.

Tenemos 3 lugares para poner const.

(1)const <tipo> (2)const * (3)const

(1) a un tipo (3) a un puntero, aquí no hay opciones. Tiene sentido referirse (2) a un tipo porque el puntero es un atributo del tipo y no al revés.

 
Комбинатор:

Tenemos 3 lugares para poner const.

(1)const <tipo> (2)const * (3)const

(1) al tipo (3) al puntero, aquí no hay opciones. Y (2) se atribuye lógicamente al tipo porque el puntero es un atributo del tipo y no al revés.

(1)const <tipo> (2)const * (3)const &

  1. tipo.
  2. puntero
  3. referencia.
De izquierda a derecha se lee.
 
fxsaber:

(1)const <tipo> (2)const * (3)const &

  1. tipo.
  2. puntero
  3. referencia.
Lea de izquierda a derecha.
¿Ayudaría eso?
 
fxsaber:

En primer lugar, por la propia naturaleza del vínculo, no tiene sentido hacerlo constante.

En segundo lugar, si tuviera sentido,

const A * const & const [] -- esto es lo que creo que es correcto.

 
Комбинатор:

En primer lugar, por la propia idea del vínculo no tiene sentido hacerlo constante.

En segundo lugar, si tuviera sentido,

const A * const & const [] -- esta es una notación correcta, creo.

Tiene sentido que la referencia sea una constante. Pero veo la entrada como algo ilógico.

Estaba acariciando un bonito árbol de entendimiento lingüístico pero aquí se ve tal vandalismo ))

 
fxsaber:

Tiene sentido que la referencia sea una constante.

¿Un ejemplo?

 
Комбинатор:

¿Un ejemplo?

Cuando se quiere asegurar que los elementos y el tamaño de un array no se modifican.
 
fxsaber:
Cuando se quiere garantizar que los elementos y el tamaño del array no se modifican.

La referencia para los arrays es una muleta en el lenguaje MQL, no una referencia.

Y si [] es un modificador de tipo como *, debería tener su propia const! y no una referencia.

 
coderex:

- CHART_WINDOWS_TOTAL - definido como[UNKNOWN ENUM]::101

-CHART_WINDOW_IS_VISIBLE - definido como [UNKNOWN ENUM]::102

Y, por supuesto, la funciónChartSetInteger genera el error 4109 - Faulty Chart Property Identifier.

El error está justificado - estos identificadores están especificados como ReadOnly (r\o) en la Documentación https://www.mql5.com/ru/docs/constants/chartconstants/enum_chart_property, lo cual no es compatible con ChartSetInteger
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы графиков / Свойства графиков
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы графиков / Свойства графиков
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы графиков / Свойства графиков - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5