क्षमा करें यदि यह बहुत अच्छा है, लेकिन मैं C ++ के लिए बहुत नया हूं। मैं एक फ़ाइल खोलने और इसे पढ़ने का प्रयास कर रहा हूँ ifstream
:
vector<string> load_f(string file) {
vector<string> text;
ifstream ifs(file);
string buffer, str_line;
int brackets = 0;
str_line = "";
while ( getline(ifs, buffer) ) {
buffer = Trim( buffer );
size_t s = buffer.find_first_of("()");
if (s == string::npos) str_line += "" + buffer;
else {
while ( s != string::npos ) {
str_line += "" + buffer.substr(0, s + 1);
brackets += (buffer[s] == '(' ? 1 : -1);
if ( brackets == 0 ) {
text.push_back( str_line );
str_line = "";
}
buffer = buffer.substr(s + 1);
s = buffer.find_first_of("()");
}
}
}
return text;
}
हालाँकि, मुझे निम्न त्रुटि मिल रही है, मुझे यकीन नहीं है कि कैसे ठीक करें:
variable 'std::ifstream ifs' has initializer but incomplete type
जवाब बहुत सराहना की। ध्यान दें कि मैं कभी नहीं भूल गया #include <fstream>
, क्योंकि बहुत से हेडर को शामिल करने के लिए भूल जाने के कारण त्रुटि हुई है।
संपादित करें:
यह बताता है कि मैं वास्तव में शामिल fstream
करना भूल गया था, लेकिन फ़ंक्शन को किसी अन्य फ़ाइल में स्थानांतरित करने के कारण मैं भूल गया था।
<iostream>
। ही <fstream>
करेंगे।