结构内部的类构造函数

Class constructor Inside Struct

本文关键字:构造函数 内部 结构      更新时间:2023-10-16

如何使用类构造函数初始化结构中的类

假设我的类可以像client c_3(io_service_2);

那样初始化

现在,当我在struct

中以同样的方式初始化时
struct a{
    boost::asio::io_service io_service_2;
    client c_3(io_service_2);
};

我得到像

这样的错误
error: C2061: syntax error : identifier 'io_service_2'

任何帮助将不胜感激。

如果你想默认初始化io_service_2成员,然后使用初始化c_3,并且都是成员,那么需要一个成员初始化列表

struct a
{
    boost::asio::io_service io_service_2;
    client c_3;
    a() : io_service_2(), c_3(io_service_2) {}
};
注意:类中成员变量声明的顺序是最重要的,因为它决定了成员初始化的顺序,而不考虑在实际成员初始化列表中的顺序 祝你好运。