gpt4 book ai didi

c++ - 有没有一种方法可以延迟初始化类的静态子对象?

转载 作者:行者123 更新时间:2023-11-28 03:40:44 26 4
gpt4 key购买 nike

有没有办法在 main() 启动后初始化静态类成员?

最佳答案

一种方法是替换静态成员函数中的静态成员数据。

假设你有这门课:

class A
{
static B static_b; //static member data
};

//.cpp
B A::static_b; //definition (required)

因此,您可以将类定义为:

class A
{
static B static_b() //static member function!
{
static B b;
return b;
}
};

请注意,它不是线程安全的,但您也可以使其成为线程安全的。

关于c++ - 有没有一种方法可以延迟初始化类的静态子对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9349048/

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