ตัวแปรแบบสร้างเองใน c และ c++ จริงๆแล้วก็คือ
struct นั่นเอง แนวคิดของการสร้างข้อมูลชนิดนี้ขึ้นมาก็คือ
ต้องการเก็บข้อมูลให้เป็นกลุ่มก้อนเดียวกัน เพื่อว่าจะสามารถเข้าถึง
ดำเนินการต่างๆ หรือโอนย้ายได้ง่าย ขอยกตัวอย่างให้เห็นชัด กรณีตำแหน่งของจุดๆหนึ่งในพิกัดฉาก
เราจะบอกตำแหน่งนั้นด้วยพิกัด x , y และ z ในที่นี้หากเราต้องการเก็บข้อมูลพิกัดทั้งสามนี้เป็นข้อมูลกลุ่มเดียวกัน
เราจะทำการประกาศโครงสร้างแบบ struct เพื่อกำหนดชนิดข้อมูลแบบสร้างเองขึ้นมา เช่น
ต้องการสร้างข้อมูลชนิด Point ที่มีสมาชิกในกลุ่มเป็นพิกัด x , y และ z ที่เป็นชนิดข้อมูลแบบ
int เราจะประกาศโครงสร้างตามโค้ดโปรแกรมดังนี้ครับ
struct Point
{
int
x ;
int
y ;
int
z ;
} ;
เราสามารถใช้ฟังก์ชัน sizeof หาขนาดหน่วยความจำของตัวแปรชนิด
Point ได้เหมือนตัวแปรปกติทั่วไป โดยจากตัวอย่างตัวแปรชนิด Point ต้องการหน่วยความจำในการจัดเก็บ 3x4 = 12 bytes
การกำหนดค่าให้กับตัวแปรขนิด Point
สามารถทำได้ผ่านตัวดำเนินการ . ดังตัวอย่าง
Point V // ประกาศตัวแปร V เป็นข้อมูลประเภท
Point
V.x = 10 ; //กำหนดให้ x มีค่าเท่ากับ 10
V.y = 15 ; //กำหนดให้ y มีค่าเท่ากับ 15
V.Z = 20 ; //กำหนดให้ z มีค่าเท่ากับ 20
จากบทความที่ผ่านมาเราได้เขียนโปรแกรมเกี่ยวกับการดำเนินการของเมตริกซ์
ซึ่งเราสามารถกำหนดชนิดตัวแปรแบบเมตริกซ์ไว้ใช้งานได้เช่นกัน ดังนี้
struct Matrix
{
int
col ;
int
row ;
Float**
member ;
};
เท่านี้ก็สามารถใช้งานตัวแปรแบบเมตริกซ์ได้อย่างสะดวกครับ
ตัวอย่างการใช้งานจะนำเสนอในบทความอื่นๆต่อไป
เราสามารถพบเจอตัวแปรแบบสร้างเองมากขึ้นในการเขียนโปรแกรมประเภทวินโดว์
ด้วย Visual C++ , WIN32 API ซึ่งมีการกำหนดตัวแปรชนิดใหม่ๆขึ้นมารองรับการพัฒนาแอฟพลิเคชั่นเพื่อความสะดวกกับโปรแกรมเมอร์ผู้พัฒนา
Application เหล่านั้น