के साथ सफलतापूर्वक खोला गया है, तो मेरे पास निम्न है जो पढ़ने के लिए फ़ाइल खोल देगा। हालांकि, मैं यह सुनिश्चित करने के लिए जांचना चाहता हूं कि फ़ाइल सफलतापूर्वक खुलती है, इसलिए मैं यह देखने में असफल रहा हूं कि झंडे सेट किए गए हैं या नहीं।जांच कर रहा है कि फ़ाइल को ifstream
मैं, सी ++ के लिए नया हूँ के रूप में मैं सी से आ रहा हूँ तो यकीन नहीं है कि मैं इस त्रुटि को समझें:
cannot call member function ‘bool std::basic_ios<_CharT, _Traits>::fail() const [with _CharT = char, _Traits = std::char_traits]’ without object
कोड:
int devices::open_file(std::string _file_name)
{
ifstream input_stream;
input_stream.open(_file_name.c_str(), ios::in);
if(ios::fail() == true) {
return -1;
}
file_name = _file_name;
return 0;
}
नमस्ते, धन्यवाद। होवेवर, मैं बस सोच रहा हूं कि असफल झंडा मेरे लिए क्यों काम नहीं करता? – ant2009
'input_stream.fail()' का उपयोग करके '! Input_stream' जैसा ही प्रभाव होना चाहिए। जैसा कि मैंने कहा था, आप 'ios :: विफल()' का उपयोग नहीं कर सकते क्योंकि यह एक उदाहरण विधि है, स्थिर विधि नहीं। – Sven
कृपया, 'ifosream' के साथ 'ios :: in' ध्वज का उपयोग क्यों करें? – nn0p