क्या बूस्ट लाइब्रेरी एक सुरक्षित बूल मुहावरे का कार्यान्वयन प्रदान करती है, ताकि मैं अपनी कक्षा से इसे प्राप्त कर सकूं?बढ़ावा में सुरक्षित बूल मुहावरे?
यदि हां - यह कहां है?
यदि कोई - यह अपने आप को लागू करने से परे मेरे विकल्प क्या हैं?
मैं निम्नलिखित समान प्रश्न पाया: "Is there a safe bool idiom helper in boost?" और स्वीकार किए जाते हैं जवाब Boost.Operators में bool_testable<>
का उपयोग कर पता चलता है।
दुर्भाग्य से, जब मैं boost manual जाँच की मैं इसे वहाँ मिल सकता है। इसका उपयोग करने वाला कोड भी संकलित करने में विफल रहता है।
मैंने एक और एसओ प्रश्न "Was boost::bool_testable<> relocated or removed?" पर भी ठोकर खाई और टिप्पणी में बताया गया है कि bool_testable
वास्तव में कभी भी किसी भी रिलीज संस्करण को बढ़ावा देने के लिए नहीं बनाया गया है।
वहाँ भी एक दिलचस्प article by Bjorn Karlsson विषय है जो एक कोड है जो जा मेरी परियोजना में कॉपी-पेस्ट किया सका पर है। हालांकि, मुझे उम्मीद है कि एक सामान्य रूप से स्वीकृत और रखरखाव उपयोगिता लाइब्रेरी (जैसे बूस्ट) है जो पहले से ही लागू होती है।
संगतता कारणों के लिए, मैं नहीं चाहता कि सी ++ 11 पर भरोसा करना चाहते हैं।
क्या आपने स्पष्ट रूप से 'बूल' में परिवर्तित नहीं होने से समस्या को हल करने पर विचार किया है? –
इस आलेख के पृष्ठ 3 पर पुनः उपयोग करने योग्य सुरक्षित बूल कार्यान्वयन है: http://www.artima.com/cppsource/safebool.html –
धन्यवाद। मैंने इसका जिक्र नहीं किया, लेकिन मैंने इसे देखा और मैं उस कोड को कॉपी-पेस्ट कर सकता हूं, लेकिन मैं उम्मीद कर रहा था कि कुछ सामान्य रूप से स्वीकृत और रखरखाव उपयोगिता लाइब्रेरी (बूस्ट पहले दिमाग में आता है) पहले से ही ऐसा करता है। – CygnusX1