standards - Precendence in C++ if-statements -
संभव डुप्लिकेट:
मेरे पास निम्न परिभाषा परिभाषा और एक विशेष उपयोग के मामले हैं:
struct foo {bool boo; }; Int main () {foo * f = 0; । । । अगर ((एफ) एंड amp; (एफ- & gt; बुओ)) // & lt; --- विवाद का मुद्दा, 0 और वापसी 1; }
क्या मानक गारंटी है कि उपरोक्त if-statement में ब्रेसिज़ का पहला समूह हमेशा दूसरे से पहले मूल्यांकन किया जाएगा?
अगर यह नहीं है कोड के उपरोक्त बिट को फिर से लिखना सबसे अच्छा क्या है?
वर्तमान में मेरे पास निम्न गड़बड़ है:
अगर (च) {if (f- & gt; boo) 0; और वापसी 1; } और वापसी 1;
यह शैली का मामला हो सकता है लेकिन आप कह सकते हैं: < पूर्व>
वापसी (एफ एंड amp; एफ- & gt; बू);
... या थोड़ा और स्पष्ट करने के लिए:
वापसी ((एफ एंड amp; एफ- & gt; बू) 1: 0) ;
Comments
Post a Comment