vb.net - Or versus OrElse -


या और OrElse के बीच अंतर क्या है?

  यदि temp dbnull.value या temp = 0  

त्रुटि उत्पन्न करता है:

ऑपरेटर '=' प्रकार के लिए परिभाषित नहीं है 'डीबीब्लूल' और टाइप 'इंटीजर'।

जबकि यह एक आकर्षण की तरह काम करता है !?

  अगर temp dbnull.value OrElse temp = 0 < / कोड>   

ओरेस एक शॉर्ट सर्किट ऑपरेटर, या नहीं है।

बुलियन 'या' ऑपरेटर की परिभाषा के अनुसार, अगर पहला शब्द सच है तो पूरे निश्चित रूप से सच है - दूसरे शब्द का मूल्यांकन करने की आवश्यकता नहीं है।

OrElse यह जानता है, इसलिए temp = 0 का प्रयास और मूल्यांकन नहीं करता है एक बार इसे स्थापित किया गया है कि Temp है DBNull.Value

या यह नहीं जानता, और हमेशा दोनों शब्दों का मूल्यांकन करने का प्रयास करेगा जब अस्थायी है DBNull.Value , यह शून्य से तुलना नहीं की जा सकती है, इसलिए यह खत्म हो गया है।

आपको उपयोग करना चाहिए ... ठीक है, जो भी एक समझ में आता है।


Comments

Popular posts from this blog

email - PHP mail error ... failed to open stream : permission denied -

sql server - SQL Query - Delete duplicates if more than 3 dups? -

c - Different access levels with PAM -