Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

ตัวระบุ "ระเหย" ในC


ที่นี่เราจะดูว่าความหมายของตัวระบุผันผวนใน C ++ คืออะไร ตัวระบุความผันผวนจะถูกนำไปใช้กับตัวแปรเมื่อเราประกาศ ใช้เพื่อบอกคอมไพเลอร์ว่าค่าอาจเปลี่ยนแปลงได้ตลอดเวลา นี่คือคุณสมบัติบางอย่างของความผันผวน

  • คีย์เวิร์ดระเหยไม่สามารถลบการกำหนดหน่วยความจำได้
  • ไม่สามารถแคชตัวแปรในรีจิสเตอร์ได้
  • ค่าไม่สามารถเปลี่ยนแปลงได้ตามลำดับการมอบหมาย

มาดูกันว่าเราจะใช้คีย์เวิร์ดผันผวนได้อย่างไร

volatile int a;
int volatile a;

การประกาศทั้งสองนี้ถูกต้อง เช่นเดียวกับประเภทข้อมูลอื่น ๆ เราสามารถใช้พอยน์เตอร์ โครงสร้าง การรวมตัว ฯลฯ ที่ระเหยได้ โครงสร้างและการรวมที่เปลี่ยนแปลงได้นั้นสามารถเปลี่ยนแปลงได้เอง และตัวแปรสมาชิกของพวกมันก็สามารถเป็นประเภทที่ผันผวนได้เช่นกัน

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

ตัวอย่าง

int main (){
   int value;
   value++;
}i
nt main (){
   volatile int value;
   value++;
}

มีรหัสสองช่วงตึก ในบล็อกแรกไม่มีคีย์เวิร์ดผันผวน ดังนั้นในกรณีแรก ตัวแปรจะถูกคัดลอกจากหน่วยความจำไปยังการลงทะเบียน CPU จากนั้นจึงดำเนินการ ในกรณีที่สองมีความผันผวน ดังนั้นในกรณีนี้ ตัวแปรจะไม่ถูกคัดลอกจากหน่วยความจำไปยังรีจิสเตอร์