คำสงวน

จากวิกิพีเดีย สารานุกรมเสรี
ไบยังการนำทาง ไปยังการค้นหา

ในภาษาคอมพิวเตอร์ คำสงวน (หรือคำบ่งชี้สงวน) คือคำที่ไม่สามารถใช้เป็นตัวระบุ เช่นชื่อของตัวแปร ฟังก์ชั่น หรือลาเบล คำสงวนถูกนิยามตามไวยากรณ์ภาษาคอมพิวเตอร์ และอาจจะมีหรือไม่มีความหมายก็ได้

หนึ่งในคำที่มักสับสนกับคำสงวน คือคีย์เวิร์ด (keyword) ซึ่งเป็นคำที่มีความหมายพิเศษตามแต่บริบท ชื่อที่พบได้ในไลบรารีมาตรฐาน (standard library) แต่ไม่ถูกรวมมาในภาษาคอมพิวเตอร์ตั้งแต่ต้น ไม่ใช่ทั้งคำสงวนและคีย์เวิร์ด ทั้งนี้วลี "คำสงวน" และ "คีย์เวิร์ด" มักสามารถใช้แทนกันได้ในหลายกรณี เช่นการกล่าวว่าคำสงวนคือคำที่ "ถูกสงวนไว้ใช้เป็นคีย์เวิร์ด" นิยามของคำสงวนและคีย์เวิร์ดต่างกันไปตามแต่ละภาษาโปรแกรมมิ่ง

โดยทั่วไปแล้วคำคำหนึ่งอาจจะไม่ต้องเป็นทั้งคำสงวนและคีย์เวิร์ด แต่ในภาษาโปรแกรมมิ่งสมัยใหม่ คำสงวนใดๆ มักจะเป็นคีย์เวิร์ดเพื่อความง่ายในการอ่านโค้ดโปรแกรม (เพราะคีย์เวิร์ดไม่ควรถูกสับสนกับคำบ่งชี้) ในภาษาโปรแกรมมิ่งบางภาษาเช่นซีหรือไพธอน คำสงวนทุกคำเป็นคีย์เวิร์ด และคีย์เวิร์ดทุกคำเป็นคำสงวน ในขณะที่สำหรับภาษาบางภาษาเช่นจาว่า คีย์เวิร์ดทุกคำเป็นคำสงวน แต่คำสงวนทุกคำไม่ใช่คีย์เวิร์ด

การแบ่งแยก[แก้]

ดังที่ได้กล่าวไปว่าคำสงวนใดๆ โดยมากมักเป็นคีย์เวิร์ด และคีย์เวิร์ดใดๆ ก็มักเป็นคำสงวนด้วน ดังนั้นจึงพบการใช้คำว่า "คำสงวน" และ "คีย์เวิร์ด" ในบริบทแทนกันอยู่บ่อยครั้ง แต่ในทางทฤษฎีแล้ว คำสองคำนี้มีความหมายไม่เหมือนกัน

การทำให้คีย์เวิร์ดเป็นคำสงวนส่งผลให้กระบวนการอ่านโค้ดง่ายขึ้น เพราะจะไม่เกิดความกำกวมว่าคำคำหนึ่งที่เป็นคีย์เวิร์ดนั้นกำลังทำหน้าที่คีย์เวิร์ดหรือชื่อทั่วไป ดังนั้นโดยทั่วไป คีย์เวิร์ดจะเป็นสับเซตของคำสงวน ทั้งนี้คำสงวนใดๆ ไม่จำเป็นต้องเป็นคีย์เวิร์ด เช่นคำว่า goto ในภาษาจาวาเป็นคำสงวน แต่ไม่ใช่คีย์เวิร์ดในภาษาจาวา