如何在另一个类中初始化类

How to initialize class in another class

本文关键字:初始化 另一个      更新时间:2023-10-16

我愿意使用构造函数应该什么都不做的make类,但在我的类中,我声明了一个类,该类在构造函数中接受一些参数。 如何在该类中传递参数?

现在我正在使用如下所示的构造函数,它工作正常,

 /* some other class */
    OtherClass board;
/*main class in which I have declared OtherClass*/
    MyClass(std::string calibrationFile, std::string task,
                  std::string device, uInt64 numberOfSamples = 1000, float64 samplingRate = 1.0e4):
            board(task, device, numberOfSamples, samplingRate),
            f(6, 0)
        {}

但我想让它像下面这样,

MyClass():
    board(Task, Device, NumberOfSamples, SamplingRate),
        f(6, 0)
    {
    }

问题是我不知道如何初始化我想传入板的参数。请指导我该怎么做。

您提供的第一个代码示例是执行所需操作的正确方法。将参数传递到 MyClass 有什么问题?它的构造函数完全"什么都不做",只是将参数传递到它的成员构造函数中。在第二种情况下,您唯一可以实现的是将默认值传递给板的构造函数(即硬编码)。