Pregunta

¿Cómo haría usted para crear una clase de vectores en Delphi? Yo preferiría que poner todas las cosas relacionadas con las matemáticas en una DLL. ¿Debo usar un registro o una clase que implementa una interfaz?

Pros de enfoque de registro:

  • Rápido y ligero
  • Tipo de valor
  • sobrecarga de operadores

Contras de enfoque de registro:

  • La aplicación no se puede esconder en la DLL (sin herencia, por lo que hay una clase base abstracta para la interfaz DLL posible)
  • Problemas con registros como propiedades de clases (Class.VectorProp.X := 42)

¿Qué opinas?

¿Fue útil?

Solución

Depende de sus prioridades.

Si el rendimiento es una prioridad superior, vaya para los registros. Pero si escondite aplicación es superior, vaya para las interfaces.

Pero por qué no usar un paquete para que ambos puedan utilizar la vinculación estática y dinámica si lo desea. Por supuesto, un DLL se prefiere si el código es para ser utilizado por otros idiomas, un archivo DLL es una mejor aproach.

Botom línea, los requisitos y su prioridad relativa a determinar la aplicación.

Otros consejos

No he utilizado ninguno de estos, pero que podría ahorrar algo de tiempo.

  1. SDL MathPack - no estoy seguro si tendría que pagar por ello
  2. Jedi Math - parece que el proyecto ha sido abandonado, pero se debe comprobar que funciona de todos modos. Si su no hacer nada loco que probablemente va a trabajar para usted.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top