使用new初始化cpp类



我创建了一个Vector3类:

class Vector3{
public:
float x, y, z;
};

我可以做到:

Vector3 v;
v.x = 0.0f;
v.y = 0.0f;
v.z = 0.0f

我想这样初始化它:

Vector3 v = new Vector3(0.0f, 0.0f, 0.0f);

我想你在问如何编写一个初始化成员的构造函数:

class Vector3{
public:
float x, y, z;
Vector3(float a,float b, float c) : x(a),y(b),z(c) {}
Vector3() : x(0.0f), y(0.0f), z(0.0f) {}
};

现在你可以写了

Vector3 v(0.0f, 0.0f, 0.0f);
Vector3 v2;

不要使用new创建对象。如果您确实需要一个动态分配的对象,那么请使用智能指针。

最新更新