आप निम्नलिखित है:एक परिभाषित रास्ते में त्रिगुट ऑपरेटर शॉर्ट सर्किट करता
if (x)
{
y = *x;
}
else
{
y = 0;
}
तो व्यवहार हम कर सकते हैं के बाद से ही x
भिन्नता अगर यह 0
नहीं किया जा सकता है परिभाषित करने की गारंटी दी गई है उसी के लिए कहा जा सकता है:
y = (x) ? *x : 0;
यह अपेक्षा के अनुरूप (यहां तक कि ग्राम पर -Wpedantic
साथ संकलित ++) काम करने के लिए लगता है
क्या यह गारंटी है?
हां - टर्नरी ऑपरेटर सिर्फ वाक्य रचनात्मक चीनी –
हां है। (उत्तर के रूप में पोस्ट करने के लिए बहुत छोटा)। – JSF
टर्नरी अभिव्यक्ति में कोई "शॉर्ट सर्किट" नहीं है। और यह स्थिति पूरी तरह से मूल्यांकन किए जाने से पहले किसी भी शाखा का समय से मूल्यांकन या निष्पादित नहीं करता है। –