我是一名最近在C#工作的C/C++程序员,我正在尝试做一些花哨的初始化工作,我遇到了一些麻烦.
我想出的最好和最简单的例子就是我想要创建一个“Eager”Singleton – 一个在程序启动时立即创建的,但是我不需要进入程序的主要功能并说“Singleton. Instance()“作为第一件事.我读了静态实例化,看起来它必须在实例化静态对象之前调用或创建,所以我尝试创建一个实例化对象的静态变量,但这不起作用. (我找不到任何关于何时实例化/初始化静态变量的文档).
有什么指针吗?
谢谢!
编辑:经过一些额外的研究,我认为我可以通过利用反射的单个代码块来完成我正在寻找的东西
最佳答案 只有在第一次引用包含构造函数的类时才会调用静态构造函数.因此,当您希望初始化代码在程序启动时运行时,您必须在启动代码中显式引用包含构造函数的类(例如,Main方法).