• 有没有一种方法来创建子对象在C#比使用嵌套类等?

  • 本文关于 c#,nested-class
  • CodeGo.net > 有没有一种方法来创建子对象在C#比使用嵌套类等?
  •  

    有没有一种方法来创建子对象在C#比使用嵌套类等?



    c# nested-class
    我建立的项目清单作为一类称为MyLib,库初始化需要相当长,需要做的只有一次。在此之后的任何项目的清单中的一个实例可以在相关条目类被创建,但项目实例不应该被允许的,除非该库被实例化。我发现这是唯一可行的办法是通过嵌套类的库里面的项目类别,如下图所示,但我不知道是否有这样做的更好的方法。
    public class MyLib 
    {
     protected string LibFilePath;
     public MyLib ()
     {
      /* Time-consuming Library initialization code here
       needs to be done only once
       LibFilePath initialized
       etc.
       */
     }
     public class LibItem1
     {
      /* Must ensure that MyLib is initialized
       * Must have access to Library information like LibFilePath, etc.
       */
     }
    }
    

    本文地址 :CodeGo.net/1106221/
    -------------------------------------------------------------------------------------------------------------------------
    1.您可以强制这也就像这样:
    public class MyLib 
    {
     public static void InitializeMyLib(...)
     {
      if (instance != null)
      {
       throw new InvalidOperationException("Already initialized");
      }
      instance = new MyLib(...);
     }
     public static MyLib GetInstance()
     {
      if (instance == null)
      {
       throw new InvalidOperationException("Not initialized");
      }
      return instance;
     }
     private MyLib(...)
     {
      ...
     }
     private static MyLib instance;
    }
    public class LibItem1
    {
     public LibItem1()
     {
      MyLib.GetInstance(); // will throw if doesn't exist
     }
    }
    
    如果有一个单例是确定在这里-你这个类的行为西服说明了这种模式。当然,一般异常为了简单起见,你普通的创建上,而不是InitializeMyLibGetInstance不过,我猜,这是情况并非如此,因为那么你就不必禁止创建Libitem1的初始化之前。
    本文标题 :有没有一种方法来创建子对象在C#比使用嵌套类等?
    本文地址 :CodeGo.net/1106221/
    1. 一天望个为……
    2. 在文本正则表达式的beggining匹配浮点数
    3. 那位仁兄代码错再哪?我找不到....
    4. 如何解决SAP和SAPV命名空间的XAML文件
    5. 求一个函数返回一个整数?
    6. ASP.NET的UpdatePanel定时更新失败专注于文本框
    7. 关于数据绑定的函数及其使用方法
    8. 编写JavaScript脚本中的C#代码
    9. 讨论:window.open()打开窗口后,session失效的解决方法
    10. 返回datarow使用ODBC插入后

     
    

    Copyright © 2017 CodeGo.net
    http://codego.net/xinwen/ 足球比分网 足球比分 医药招商网 邵阳县新闻