Hola, soy nuevo en el foro y también con C++. Quería hacer unas cuantas funciones aparentemente sencillas sobre matemáticas, aunque me he encontrado con errores al empezar.
Adjunto el código:
Código:
#include <iostream>
using namespace std;
template <typename D>
class math
{
public:
struct vector{
D x;
D y;
D z;
};
};
template <typename D>
D & operator + (D & a, D & b)
{
math::vector<D> d;
d.x=a.x+b.x;
d.y=a.y+b.y;
d.z=a.z+b.z;
D *ref=d;
return *ref;
}
int main(void)
{
math::vector<int> a={2,3,5};
math::vector<int> b={3,5,6};
math::vector<int> c;
c=a+b;
cout << c.x << "i + " << c.y << "j + " << c.z << "k" << endl;
}
Tengo errores al declarar todos los tipos vector y en las funciones no acabo de tener muy claro como es la sintaxis para pasar estructuras como parámetros o que devuelvan estructuras.
Como proyecto personal me gustaría crear unos módulos que operasen con todo tipo de funciones, polinomios, ecuaciones, etc. Para poder usarlos en simulaciones de física finalmente. Por eso querría preguntar también sobre módulos y funciones para manejar ventanas y gráficos.
Muchas gracias de antemano