类的私人Load()方法,它们是如何工作的
我对C++非常陌生,我遇到了一些代码,我遇到了麻烦,希望有人能够启发我。这是我所了解的单身人士课程,它用于保存应用程序的设置。该类有一个私有构造函数和一个私有的Load()方法。它也实例化自己作为一个私人成员,这一切似乎都没问题。类的私人Load()方法,它们是如何工作的
private: MySettings(void);
MySettings(const MySettings&);
static MySettings& GetInstance();
bool Load();
private:
static MySettings mySettings;
类的Load()方法内的代码似乎正在执行,但我不明白为什么。我不是(不能?)在我的应用程序的任何地方调用它。方法名称是否具有任何特殊意义的“负载”?我还没有看到任何讨论类的特殊“加载”方法的C++指南。
如果有人能在正确的方向点坐标我的感激,感谢
回答:
具有特殊意义的是main
功能,当您启动程序,它就会自动调用的唯一方法。然而,负载没有特别的意义。其目的是为了避免在构造对象时加载数据,以防万一它在任何地方传递(并且所有副本最终会反复加载数据)。
总之,没有。它没有特别的意义。您必须将其称为某处。由于它是私人的,你应该检查你的构造函数。这可能是调用Load。
回答:
对于名为Load
的方法没有什么特别之处。如果你认为它已经被执行了,它会被明确地调用。要么它从你的班级的另一种方法中调用,要么这个班级让另一个班级或方法成为朋友,而另一个实体发起呼叫。
回答:
的关键是这样的:
private: static MySettings mySettings;
这宣告MySettings的静态实例。静态实例在main()运行之前构造。 (。因此,构造函数被调用,然后)
某处在一个.cc文件,你会发现这样的事情:
MySettings MySettings:mySettings;
...这是与声明去定义。
实际上,这是创建单身人士的一种有点聪明的方式。
(更新:我猜的构造函数调用加载()。)
以上是 类的私人Load()方法,它们是如何工作的 的全部内容, 来源链接: utcz.com/qa/263455.html