IMHO एक चर को दूसरे चर या अभिव्यक्ति से बांधना गणित में एक बहुत ही सामान्य परिदृश्य है। वास्तव में, शुरुआत में, कई छात्र सोचते हैं कि असाइनमेंट ऑपरेटर (=) किसी प्रकार का बंधन है। लेकिन अधिकांश भाषाओं में, बाध्यकारी को मूल विशेषता के रूप में समर्थित नहीं किया गया है। कुछ भाषाओं में जैसे C #, बाइंडिंग को कुछ मामलों में कुछ शर्तों के साथ पूरा किया जाता है।
लेकिन आईएमएचओ ने इसे एक देशी विशेषता के रूप में लागू करना निम्नलिखित कोड को बदलने के रूप में सरल था-
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;
मतलब हर निर्देश के बाद बाध्यकारी निर्देश को असाइनमेंट के रूप में रखना, किसी भी चर के सही मान में अभिव्यक्ति में निहित है। इसके बाद, अनावश्यक निर्देशों (या संकलन के बाद विधानसभा में अनुकूलन) को ट्रिम करना होगा।
तो, क्यों यह ज्यादातर भाषाओं में मूल रूप से समर्थित नहीं है। विशेष रूप से भाषाओं के सी-परिवार में?
अपडेट करें:
अलग-अलग राय से, मुझे लगता है कि मुझे इस प्रस्तावित "बाध्यकारी" को अधिक सटीक रूप से परिभाषित करना चाहिए-
- यह एक तरह से बाध्यकारी है। केवल योग एक + बी से जुड़ा हुआ है, न कि इसके विपरीत।
- बंधन का दायरा स्थानीय है।
- एक बार बंधन स्थापित हो जाने के बाद, इसे बदला नहीं जा सकता है। मतलब, एक बार राशि + बी से बंधी हो, तो राशि हमेशा एक + बी होगी।
उम्मीद है कि विचार अब स्पष्ट है।
अपडेट 2:
मुझे बस यह P # सुविधा चाहिए थी । आशा है कि यह भविष्य में भी रहेगा।