程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> C#中構造(struct)的部門初始化和完整初始化實例剖析

C#中構造(struct)的部門初始化和完整初始化實例剖析

編輯:C#入門知識

C#中構造(struct)的部門初始化和完整初始化實例剖析。本站提示廣大學習愛好者:(C#中構造(struct)的部門初始化和完整初始化實例剖析)文章只能為提供參考,不一定能成為您想要的結果。以下是C#中構造(struct)的部門初始化和完整初始化實例剖析正文


本文實例剖析了C#中構造(struct)的部門初始化和完整初始化,分享給年夜家供年夜家參考。詳細剖析以下:

假定有如許一個值類型struct,以下所示:

public struct Size
{
    public int Length;
    public int Width;
    public int Area()
    {
      return Length*Width;
    }
}

1、客戶端,給一切struct字段初始化後挪用辦法

class Program
{
    static void Main(string[] args)
    {
      Size size;
      size.Length = 10;
      size.Width = 5;
      Console.WriteLine(size.Area());
      Console.ReadKey();
    }
}

成果:50

2、客戶端,給部門struct字段初始化

class Program
{
    static void Main(string[] args)
    {
      Size size;
      size.Length = 10;
      Console.WriteLine(size.Area());
      Console.ReadKey();
    }
}

成果:報錯,應用了未賦值的部分變量。 
可見:假如想挪用struct實例的任何辦法,須要給struct的一切字段初始化。

3、客戶端,經由過程結構函數初始化struct

class Program
{
    static void Main(string[] args)
    {
      Size size = new Size();
      Console.WriteLine(size.Area());
      Console.ReadKey();
    }
}

成果:0
在這裡:經由過程struct結構函數創立實例,現實上是給struct的一切字段賦上了初值0。

總結:

在挪用struct實例辦法之前,必需給struct的一切字段賦上初值,即請求完整初始化,部門初始化是不許可的。要末經由過程"struct實例.字段名"給一切字段顯式賦值,要末經由過程struct結構函數,給一切字段賦上默許值。

願望本文所述剖析對年夜家C#法式設計的進修有所贊助。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved