C # โครงสร้าง (โครงสร้าง)
ใน C # โครงสร้างเป็นชนิดค่าของโครงสร้างข้อมูล ซึ่งจะช่วยให้ตัวแปรเดียวสามารถจัดเก็บข้อมูลที่เกี่ยวข้องกับข้อมูลชนิดต่างๆ คำหลักstruct ใช้ในการสร้างโครงสร้าง
โครงสร้างจะใช้เพื่อแสดงการบันทึก สมมติว่าคุณต้องการที่จะติดตามหนังสือห้องสมุดแบบไดนามิก คุณอาจต้องการที่จะติดตามของหนังสือของคุณลักษณะดังต่อไปนี้แต่ละ:
- ชื่อเรื่อง
- ผู้เขียน
- เรื่อง
- รหัสหนังสือ
โครงสร้างความหมาย
เพื่อกำหนดโครงสร้างคุณจะต้องใช้คำสั่ง struct คำสั่ง struct สำหรับโปรแกรมกำหนดชนิดข้อมูลใหม่ที่มีสมาชิกมากกว่าหนึ่งของ
ตัวอย่างเช่นคุณสามารถประกาศโครงสร้างลักษณะหนังสือต่อไปนี้:
หนังสือ struct { ชื่อสตริงสาธารณะ ผู้เขียนสตริงสาธารณะ เรื่องสตริงสาธารณะ book_id int สาธารณะ };
โปรแกรมต่อไปนี้แสดงให้เห็นถึงการใช้งานของโครงสร้าง:
การใช้ระบบ หนังสือ struct { ชื่อสตริงสาธารณะ ผู้เขียนสตริงสาธารณะ เรื่องสตริงสาธารณะ book_id int สาธารณะ }; testStructure เรียนสาธารณะ { ประชาชนเป็นโมฆะคง main (String args []) { หนังสือ Book1; / * ประกาศ Book1 ประเภทหนังสือ * / หนังสือ Book2; / * ประกาศ Book2 ประเภทหนังสือ * / / * เล่ม 1 รายละเอียด * / Book1.title = "C Programming"; Book1.author = "Nuha อาลี"; Book1.subject = "C Programming สอน"; Book1.book_id = 6495407; / * เล่ม 2 รายละเอียด * / Book2.title = "การเรียกเก็บเงินโทรคมนาคม"; Book2.author = "ซาร่าอาลี"; Book2.subject = "สอนการเรียกเก็บเงินโทรคมนาคม"; Book2.book_id = 6495700; / * พิมพ์ข้อมูล Book1 * / Console.WriteLine ( "เล่ม 1 ชื่อเรื่อง: {0}" Book1.title); Console.WriteLine ( "เล่ม 1 ผู้แต่ง: {0}" Book1.author); Console.WriteLine ( "เล่ม 1 เรื่อง: {0}" Book1.subject); Console.WriteLine ( "เล่ม 1 book_id: {0}" Book1.book_id); / * พิมพ์ข้อมูล Book2 * / Console.WriteLine ( "เล่มที่ 2 ชื่อเรื่อง: {0}" Book2.title); Console.WriteLine ( "เล่ม 2 ผู้แต่ง: {0}" Book2.author); Console.WriteLine ( "เล่ม 2 เรื่อง: {0}" Book2.subject); Console.WriteLine ( "เล่ม 2 book_id: {0}" Book2.book_id); Console.ReadKey (); } }
เมื่อโค้ดข้างต้นจะรวบรวมและดำเนินการก็จะก่อให้เกิดผลลัพธ์ต่อไปนี้:
เล่ม 1 ชื่อเรื่อง: การเขียนโปรแกรม C เล่ม 1 ผู้แต่ง: Nuha อาลี เล่ม 1 เรื่อง: C สอนการเขียนโปรแกรม เล่ม 1 book_id: 6495407 เล่มที่ 2 ชื่อเรื่อง: โทรคมนาคมการเรียกเก็บเงิน เล่ม 2 ผู้แต่ง: ซาร่าอาลี เล่มที่ 2 เรื่องการเรียกเก็บเงินกวดวิชาโทรคมนาคม เล่ม 2 book_id: 6495700
คุณสมบัติโครงสร้าง C #
คุณได้ใช้โครงสร้างที่เรียบง่ายที่เรียกว่าหนังสือ โครงสร้างที่แตกต่างใน C # และโครงสร้างดั้งเดิมของ C หรือ C ++ C # ในลักษณะโครงสร้าง:
- โครงสร้างอาจมีวิธีการเขตข้อมูลดัชนีคุณสมบัติผู้ประกอบการวิธีการและเหตุการณ์ที่เกิดขึ้น
- โครงสร้างสามารถกำหนดตัวสร้าง แต่คุณไม่สามารถกำหนด destructor อย่างไรก็ตามคุณไม่สามารถกำหนดสร้างเริ่มต้นสำหรับโครงสร้าง ตัวสร้างเริ่มต้นจะถูกกำหนดโดยอัตโนมัติและไม่สามารถเปลี่ยนแปลงได้
- ซึ่งแตกต่างจากระดับโครงสร้างไม่สามารถรับมรดกจากโครงสร้างอื่น ๆ หรือชั้นเรียน
- โครงสร้างไม่สามารถใช้เป็นพื้นฐานโครงสร้างอื่น ๆ หรือชั้นเรียน
- โครงสร้างสามารถดำเนินการอย่างใดอย่างหนึ่งหรือมากกว่าการเชื่อมต่อ
- สมาชิกโครงสร้างไม่สามารถกำหนดให้เป็นนามธรรมเสมือนหรือการป้องกัน
- เมื่อคุณสร้างวัตถุการกำหนดค่าใช้ประกอบการใหม่ก็จะเรียกตัวสร้างที่เหมาะสมในการสร้างโครงสร้างซึ่งแตกต่างจากชั้นเรียนโครงสร้างไม่สามารถใช้ผู้ประกอบการใหม่ที่จะยกตัวอย่าง
- ถ้าคุณไม่ได้ใช้ประกอบการใหม่ แต่หลังจากฟิลด์ทั้งหมดจะเริ่มต้นฟิลด์เป็นเพียงการกำหนดวัตถุที่เป็นเพียงที่จะใช้
ระดับ VS โครงสร้าง
การเรียนและมีความแตกต่างของโครงสร้างพื้นฐานต่อไปนี้:
- เรียนประเภทอ้างอิงโครงสร้างเป็นชนิดของมูลค่า
- โครงสร้างไม่สนับสนุนการสืบทอด
- โครงสร้างไม่สามารถประกาศคอนสตรัคเริ่มต้น
สำหรับการอภิปรายดังกล่าวข้างต้นขอเขียนตัวอย่างก่อนหน้านี้:
การใช้ระบบ หนังสือ struct { ชื่อ String เอกชน ผู้เขียน String เอกชน เรื่อง String เอกชน book_id int เอกชน GetValues โมฆะสาธารณะ (String T, สตริง, สตริง, int ID) { title = T; ผู้เขียน = a; เรื่อง s =; book_id = Id; } จอแสดงผลโมฆะสาธารณะ () { Console.WriteLine ( "ชื่อเรื่อง: {0}" ชื่อ); Console.WriteLine ( "ผู้แต่ง: {0}" ผู้เขียน); Console.WriteLine ( "เรื่อง: {0}" เรื่อง); Console.WriteLine ( "Book_id: {0}" book_id); } }; testStructure เรียนสาธารณะ { ประชาชนเป็นโมฆะคง main (String args []) { หนังสือ Book1 = หนังสือเล่มใหม่ (); / * ประกาศ Book1 ประเภทหนังสือ * / หนังสือ Book2 = หนังสือเล่มใหม่ (); / * ประกาศ Book2 ประเภทหนังสือ * / / * เล่ม 1 รายละเอียด * / Book1.getValues ( "C Programming" "Nuha อาลี", "C Programming สอน" 6495407); / * เล่ม 2 รายละเอียด * / Book2.getValues ( "การเรียกเก็บเงินโทรคมนาคม" "ซาร่าอาลี", "การสอนโทรคมนาคมเรียกเก็บเงิน", 6495700); / * พิมพ์ข้อมูล Book1 * / Book1.display (); / * พิมพ์ข้อมูล Book2 * / Book2.display (); Console.ReadKey (); } }
เมื่อโค้ดข้างต้นจะรวบรวมและดำเนินการก็จะก่อให้เกิดผลลัพธ์ต่อไปนี้:
ชื่อเรื่อง: การเขียนโปรแกรม C ผู้แต่ง: Nuha อาลี เรื่อง: C สอนการเขียนโปรแกรม Book_id: 6495407 ชื่อเรื่อง: การเรียกเก็บเงินโทรคมนาคม ผู้แต่ง: ซาร่าอาลี สอนการเรียกเก็บเงินโทรคมนาคม: เรื่อง Book_id: 6495700