IMHO ผูกตัวแปรกับตัวแปรอื่นหรือการแสดงออกเป็นสถานการณ์ที่พบบ่อยมากในวิชาคณิตศาสตร์ ในความเป็นจริงในตอนแรกนักเรียนหลายคนคิดว่าผู้ดำเนินการที่ได้รับมอบหมาย (=) มีความผูกพันบางอย่าง แต่ในภาษาส่วนใหญ่การเชื่อมโยงไม่ได้รับการสนับสนุนเป็นคุณลักษณะดั้งเดิม ในบางภาษาเช่น C # รองรับการเชื่อมโยงในบางกรณีโดยมีเงื่อนไขบางประการเป็นจริง
แต่ IMHO ที่ใช้สิ่งนี้เป็นคุณสมบัติดั้งเดิมนั้นง่ายเหมือนการเปลี่ยนรหัสต่อไปนี้ -
int a,b,sum;
sum := a + b;
a = 10;
b = 20;
a++;
สำหรับสิ่งนี้-
int a,b,sum;
a = 10;
sum = a + b;
b = 20;
sum = a + b;
a++;
sum = a + b;
ความหมายการวางคำสั่งการเชื่อมโยงเป็นการกำหนดหลังจากทุกคำสั่งเปลี่ยนค่าของตัวแปรใด ๆ ที่มีอยู่ในนิพจน์ทางด้านขวา หลังจากนี้คำแนะนำการตัดซ้ำซ้อน (หรือการเพิ่มประสิทธิภาพในการชุมนุมหลังจากการรวบรวม) จะทำ
ดังนั้นทำไมจึงไม่รองรับในภาษาส่วนใหญ่ เป็นพิเศษในตระกูลภาษา C ใช่หรือไม่
ปรับปรุง:
จากความคิดเห็นที่แตกต่างกันฉันคิดว่าฉันควรนิยาม "การผูก" ที่เสนอนี้ให้แม่นยำยิ่งขึ้น -
- นี่เป็นวิธีหนึ่งที่มีผลผูกพัน ผลรวมเท่านั้นที่ถูกผูกไว้กับ + b ไม่ใช่ในทางกลับกัน
- ขอบเขตของการรวมเป็นแบบโลคัล
- เมื่อสร้างการเชื่อมโยงแล้วจะไม่สามารถเปลี่ยนแปลงได้ ความหมายเมื่อผลรวมถูกผูกไว้กับ a + b ผลรวมจะเป็น a + b เสมอ
หวังว่าความคิดจะชัดเจนขึ้นในขณะนี้
อัปเดต 2:
ฉันแค่ต้องการฟีเจอร์ P #นี้ หวังว่ามันจะมีในอนาคต