static void Main()          {             using (CreateDevice frm = new CreateDevice())//这句的using是什么意思?            {                if (!frm.InitializeGraphics()) // Initialize Direct3D                {                    MessageBox.Show("Could not initialize Direct3D.  This tutorial will exit.");                    return;                }                frm.Show();
............
......
...
 

解决方案 »

  1.   

    using 语句定义一个范围,在此范围的末尾将处理对象。
    using (expression | type identifier = initializer) statement
    其中: 
    expression 
    希望在退出 using 语句时调用 Dispose 的表达式。 
    type 
    identifier 的类型。 
    identifier 
    type 类型的名称或标识符。定义一个以上 type 类型的 identifier 是可以的。在每一个 identifier = initializer 的前边都有一个逗号。 
    initializer 
    创建对象的表达式。 
    statement 
    嵌入的语句或要执行的语句。 
    备注
    在 using 语句中创建一个实例,确保退出 using 语句时在对象上调用 Dispose。当到达 using 语句的末尾,或者如果在语句结束之前引发异常并且控制离开语句块,都可以退出 using 语句。
    实例化的对象必须实现 System.IDisposable 接口。
    示例
    // cs_using_statement.cs
    // compile with /reference:System.Drawing.dll
    using System.Drawing;
    class a
    {
       public static void Main()
       {
          using (Font MyFont = new Font("Arial", 10.0f), MyFont2 = new Font("Arial", 10.0f))
          {
             // use MyFont and MyFont2
          }   // compiler will call Dispose on MyFont and MyFont2      Font MyFont3 = new Font("Arial", 10.0f);
          using (MyFont3)
          {
             // use MyFont3
          }   // compiler will call Dispose on MyFont3   }
    }
      

  2.   

    这样的问题为什么不直接查阅Msdn帮助呢?
    using 语句定义一个范围,在此范围的末尾将处理对象。备注
    在 using 语句中创建一个实例,确保退出 using 语句时在对象上调用 Dispose。当到达 using 语句的末尾,或者如果在语句结束之前引发异常并且控制离开语句块,都可以退出 using 语句。