像“vec3”这样的类通常只使用标题吗?
这是我的实际代码:
#ifndef VECTOR3_H
#define VECTOR3_H
#include <math.h>
class vec3
{
public:
double x, y, z;
vec3();
vec3(double x, double y, double z) : x(x), y(y), z(z) {}
double lenght()
{ return sqrt(pow(x, 2) * pow(y, 2) * pow(z, 2));}
double lenghtSquared()
{ return pow(x, 2) + pow(y, 2) + pow(z, 2);}
double distance(vec3 v)
{ return sqrt(pow(x - v.x, 2) * pow(y - v.y, 2) * pow(z - v.z, 2));}
double distanceSquared(vec3 v)
{ return pow(x - v.x, 2) + pow(y - v.y, 2) + pow(z - v.z, 2);}
float angle(vec3 v)
{ return (float) acos(dot(v) / lenght() * v.lenght());}
double dot(vec3 v)
{ return x * v.x + y * v.y + z * v.z;}
void cross(vec3 v) {
double a = y * v.z - v.y * z; double b = z * v.x - v.z * x;
double c = x * v.y - v.x * y; x = a; y = b; z = c;}
void normalize()
{ x, y, z /= lenght();}
};
#endif // VECTOR3_H
我可以更好地创建一个源文件而不仅仅是一个标题吗?如果你有一些建议,我喜欢它们:)
提前致谢
编辑:什么是内联?