【问题标题】:C# instantiate/initialize object at program startupC# 在程序启动时实例化/初始化对象
【发布时间】:2009-04-27 06:03:53
【问题描述】:

我是一名最近使用 C# 工作的 C/C++ 程序员,我正在尝试做一些我遇到了麻烦的花哨的初始化工作。

我能想到的最好和最简单的例子是我想创建一个“渴望”单例 - 一个在程序启动时立即创建的单例,但我不需要进入程序的主要功能并说“Singleton.Instance()”作为第一件事。我阅读了静态实例化,看起来必须在实例化静态对象之前调用或创建它,所以我尝试创建一个实例化对象的静态变量,但这不起作用。 (我找不到任何关于何时实例化/初始化静态变量的文档)。

任何指针?

谢谢!

编辑:经过一些额外的研究,我想我可以通过使用反射的单个代码块来完成我正在寻找的东西

【问题讨论】:

标签: c# reflection static startup


【解决方案1】:

仅当您第一次引用包含构造函数的类时才会调用静态构造函数。因此,当您希望初始化代码在程序启动时运行时,您必须在启动代码中显式引用包含构造函数的类(例如 Main 方法)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-07-04
    • 2011-05-12
    • 2010-10-27
    • 1970-01-01
    • 1970-01-01
    • 2012-11-05
    • 2018-08-14
    • 2013-02-11
    相关资源
    最近更新 更多