Preguntas de un "tonto" - página 128

 
mql5:
No lo olvidaremos ;)
Será mejor que sustituyas la sobrecarga de operadores por la herencia múltiple. Sería mucho más útil.
 
TheXpert:
En lugar de sobrecargar los operadores, es mejor tener una herencia múltiple. Sería mucho más útil.
Por desgracia, esto no está previsto. Por el momento, sólo estamos considerando la posibilidad de heredar clases de estructuras.
 
TheXpert:
Es mejor implementar la herencia múltiple en lugar de la sobrecarga de operadores. Sería mucho más útil.

Bien escrito - hazlo realidad :) Eso es exactamente lo que hace la herencia múltiple.

Hace una semana participé en una discusión "herencia múltiple vs. agregación" y la agregación obtuvo una victoria convincente.

 
Vladix:

Hace una semana participé en el debate "herencia múltiple vs. agregación", y la agregación obtuvo una victoria convincente

Pues sí, escribir un kilómetro de código envolvente para cada clase de implementación es mucho mejor y más eficiente. Y mucho más rápido también.

Especialmente si las interfaces son una docena o más.

Pero lánzame el enlace, lo estudiaré con calma.

 
mql5:
Por desgracia, esto no está previsto. Por el momento, sólo estamos considerando la posibilidad de heredar clases de estructuras.

Y los punteros a estructuras serían muy útiles, y no tienes que hacerlos (estructuras) dinámicos - lo principal es que puedes ordenar la matriz de índices en lugar de las estructuras mismas.

// En muchos casos, no es conveniente sustituir las estructuras por clases. Son económicos (no hay tabla de métodos virtuales) y contienen datos "sólidos".

Документация по MQL5: Основы языка / Переменные
Документация по MQL5: Основы языка / Переменные
  • www.mql5.com
Основы языка / Переменные - Документация по MQL5
 
TheXpert:

Sí, es mucho mejor y más eficiente escribir un kilómetro de código envolvente para cada clase de implementación.

Pero lanza el enlace, lo estudiaré con calma.

Sobre el wrapper - estoy de acuerdo, pero la mayoría de las veces también actúa como frontend o adaptador, es decir, modifica la interfaz de la clase agregada.

No puedo dar el enlace, fue una discusión interna por Skype con unas treinta personas interesadas.

 
Vladix:

Sobre el wrapper - estoy de acuerdo, pero la mayoría de las veces también actúa como frontend o adaptador, es decir, modifica la interfaz de la clase que se agrega.

Depende de cómo se mire. Se podría decir que la agregación en este caso es una muleta, porque la herencia múltiple es mucho más transparente y conveniente desde el punto de vista lógico y de codificación.

¿Puedo darle un ejemplo de cómo su empresa maneja las jerarquías de los rombos?

 
TheXpert:

Depende de cómo se mire. Se podría decir que la agregación es una muleta en este caso, porque la herencia múltiple es mucho más transparente y conveniente tanto desde el punto de vista lógico como de la codificación.

¿Puede dar un ejemplo de cómo su empresa maneja las jerarquías de los rombos?

Las jerarquías son, si no me equivoco, un producto de la utilización de la herencia múltiple.

¿Puede dar algún ejemplo de la vida real en el que se haya encontrado con la necesidad de construir e implementar jerarquías de pastillas?

 
Vladix:

Las jerarquías romboidales son, si no me equivoco, un producto del uso de la herencia múltiple.

¿Puede dar algún ejemplo en su vida en el que se haya encontrado con la necesidad de construir y aplicar jerarquías romboidales?

Una persona tiene un brazo, una pierna y todo tipo de órganos, están construidos a partir de células que se construyen a partir de átomos, el conjunto de átomos es finito pero sus conjuntos son enormes.

todos los órganos tienen propósitos diferentes, pero todos juntos son seres humanos. Las personas son diferentes y pueden tener distintas profesiones, etc.

Los que empezamos con un conjunto del que se hereda una célula, esos convergieron en una clase, luego volvieron a divergir en órganos y volvieron a converger en una clase de humanos, y volvieron a divergir en profesiones.

 
Vladix:

Las jerarquías romboidales son, si no me equivoco, un producto de la utilización de la herencia múltiple.

No, es un producto de diseño. No depende del uso de herramientas lingüísticas.

¿Puede dar algún ejemplo de la vida real en el que haya tenido que construir e implementar jerarquías en forma de diamante?

Al principio no, pero lo he utilizado más de una vez. Y prácticamente sin ninguna opción.

En mi opinión, escribir envoltorios de muletas es en sí mismo un argumento de peso.

Razón de la queja: