初始化作为类成员的结构

Initialising a struct which is member of class

本文关键字:结构 成员 初始化      更新时间:2023-10-16

这是我的代码:

...
#include "myheader.h"
myClass::myStruct Foo;
Foo.one = 1;
Foo.two = 2;
myClass myclass(Foo);
...

这是我在头文件中的类:

class myClass : baseClass{
public:
struct myStruct {
myStruct():
one(0),
two(0){}
int one;
int two;
};
myClass(const myStruct &mystruct);
};

但是这无法编译,我想我正在以正确的方式访问元素一和二......我收到此错误:

:预期的构造函数、析构函数或类型转换,在 '." 标记 之前。

我哪里出错了?

Foo.one = 1;

这是一个语句,它需要进入函数或方法定义内部。语句不能单独出现在源文件的顶层。

尝试将此代码放入函数中,例如入口点main()

int main() {
    myClass::myStruct Foo;
    Foo.one = 1;
    Foo.two = 2;
    myClass myclass(Foo);
    return 0;
}