तहत एसटीडी में रूपांतरण प्रेरित त्रुटि :: ifstream int करने के लिए मैं एक टाइपो (||
|
के बजाय) था और पाया है इस तरह के एक कोड जीसीसी के साथ विफल रहता है और दृश्य के साथ संकलित करता है। मुझे पता है कि std::ifstream
का दूसरा पैरामीटर int
है। तो सैद्धांतिक रूप से, bool
को int
पर निहित रूप से परिवर्तित किया जाना है। तो यह क्यों विफल रहता है?टाइपो: bool लिनक्स
उदाहरण त्रुटि को प्रेरित करना (मैंने झंडे के बजाए कुछ चींटियों का उपयोग किया)।
#include <fstream>
int main(int argc, char * argv[]) {
std::ifstream("foo", 2 | 3 || 4)
}
उत्तर के लिए Thx। कारण के बावजूद, यह मेरे लिए थोड़ा अजीब लगता है। मानक पुस्तकालय फ़ंक्शन पैरामीटर का प्रकार कार्यान्वयन परिभाषित करने का कारण क्या हो सकता है। क्या यह पोर्टेबिलिटी मुद्दा नहीं बन सका? – dgrat
@dgrat आपको केवल 'ओपनमोड' स्पष्ट रूप से परिभाषित किया जाना चाहिए। – YSC
मुझे अपने प्रश्न के सभी अप-वोटों के बारे में कुछ आश्चर्य है। विपरीत की उम्मीद है, क्योंकि एक शुरुआती मुद्दा की तरह लगता है। – dgrat