struct

struct.cs

using System;

class
Hello
{
   struct Citizen {
      public string name;
      public string surname;
      public byte age;
   }

   public static void Main()
   {
      Citizen somchai;
      somchai.name = "Somchai";
      somchai.surname = "Maadee";
      somchai.age = 67;

      Console
.WriteLine("Name:{0}",somchai.name);
      Console
.WriteLine("Surname: {0}", somchai.surname);
      Console.WriteLine("age: {0}", somchai.age);
   }
}

DOS Prompt

C:\CS>struct
Name: Somchai
Surname: Maadee
age: 67

C:\CS>_

    เรื่องนี้เป็นการสร้างตัวแปชนิดใหม่ที่เป็น value type เป็นrecord ครับ ใน record ก็ประกอบด้วย field ต่างๆ ในที่นี้เป็น record ที่เก็บรายละเอียดของบุคคล คุณสามารถกำหนดได้ว่า record ของคุณประกอบด้วย field อะไรบ้างได้โดย การใช้ struct ดังนี้ครับ

struct Citizen {
   public string name;
   public string surname;
   public byte age;
}

    เราสร้างชนิดตัวแปรใหม่ที่ชื่อว่า Citizen ซึ่งเประกอบด้วย field คือ name, surname และ age เอาไว้เก็บประวัติบุคคลต่างๆ

Citizen somchai;

อย่างที่บอกว่ามันเป็น value type ครับ ใช้งานได้เหมือน ตัวแปร value type ได้ตามปกติไม่จำเป็นต้อง new() ที่จริงแล้ว new() ได้ แต่เอาไว้บทต่อๆ ไปก่อนนะครับ

somchai.name = "Somchai";
somchai.surname = "Maadee";
somchai.age = 67;

Console
.WriteLine("Name:{0}",somchai.name);
Console
.WriteLine("Surname: {0}", somchai.surname);
Console.WriteLine("age: {0}", somchai.age);

Code ส่วนนี้เป็นวิธีการใช้ ในตัวแปร somchai ซึ่งมีชนิดตัวแปรเป็น Citizen นั้น มี field ย่อย เวลาเราต้องการอ้างถึงเราใช้ชื่อตัวแปร.ชื่อ field ง่ายๆ เท่านี้ครับ