gpt4 book ai didi

C++ 在类中定义静态对象

转载 作者:行者123 更新时间:2023-11-30 01:39:28 25 4
gpt4 key购买 nike

我在“a.h”中有一个 A 类:

#include "b.h"

class A {
public:
static B b;
}

我想在另一个函数中初始化b

在“main.cpp”中:

#include "a.h"
#include "b.h"

int main () {
....
B A::b = B(arg1, arg2);

但是语法检查器给我错误:“成员 A::b 不能在当前范围内定义。”这样做的正确方法是什么?

最佳答案

您可以在 main() 中设置值,但定义必须在全局范围内:

#include "a.h"
#include "b.h"

B A::b; // <<<<<<

int main () {
....
A::b = B(arg1, arg2);
// ^^^^

关于C++ 在类中定义静态对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45648915/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com