c++ - 是否可以在不使用默认构造函数的情况下在类定义中创建类的对象

标签 c++ constructor

是否可以在不使用默认构造函数的情况下在类定义中创建类的对象?

class Vector3D {
public:
Vector3D(int x, int y, int z);
virtual ~Vector3D();

private:
int m_X;
int m_y;
int m_z;
};

class CustomClass {
private:
Vector3D m_Vec(50,50,50); //error
};

最佳答案

是的,这可以做到,但语法不同:

class Vector3D {
public:
Vector3D(int x, int y, int z);
virtual ~Vector3D();

private:
int m_X;
int m_y;
int m_z;
};

class CustomClass {
private:
Vector3D m_Vec;

public:
CustomClass(): m_Vec(50,50,50) {}
};

关于c++ - 是否可以在不使用默认构造函数的情况下在类定义中创建类的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7646967/

相关文章:

c++ - (C++)线程一定要写在main()里吗?

c++ - Qt 中 QObjects 的引用赋值是如何完成的?

c++ - RTMP FFmpeg 复用示例

java - 通用构造器

c++ - 无法初始化类成员?

java - java中如何将多个数组传递给构造函数?

c++ - 完美转发构造函数的包装器

c++ - 在模板中获取非常量类型

c++ - 如何在运行时确保继承类中的成员函数是私有(private)的? (C++, 海合会)

java - 如何构造一个需要非常量堆的类