मैं एक कस्टम इस्ट्रीम क्लास का उपयोग कर रहा हूं
class plb_ifstream: public parallel_istream {public: plb_ifstream (); स्पष्ट plb_ifstream (const char * filename, std :: istream :: openmode mode = std :: ostream :: in); ~ Plb_ifstream (); वर्चुअल स्टडी :: आईस्ट्रीम & amp; getOriginalStream (); Bool is_open (); शून्य खुला (const char * filename, std :: istream :: openmode mode = std :: ostream :: in); शून्य बंद (); बूल अच्छा (); निजी: plb_ifstream (plb_ifstream const & amp; rhs); plb_ifstream & amp; ऑपरेटर = (plb_ifstream const & amp; rhs); निजी: डेवॉन बुलफ़र देवन बुलफर; Std :: istream devNullStream; Std :: ifstream * मूल;
};
यह एक एकल फाइल के साथ अच्छी तरह से काम करता है जैसे
plb_ifstream ifile ("geometry.dat");
हालांकि जब मैं तर्क में एक चर का उपयोग करने की कोशिश करता हूं (जैसे- for-loop) जैसे मुझे निम्न त्रुटि मिलती है मुझे कुछ अन्य समाधान मिले हैं लेकिन वे ifstream का उपयोग नहीं करते हैं। अगर केवल तभी आर्टिस्ट का उपयोग करने के लिए एक काम है, तो मैं मदद की सराहना करता हूं
त्रुटि: कॉल के लिए कोई मेल नहीं खाती 'Plb :: plb_ifstream :: plb_ifstream (std :: basic_ostringstream & lt; char & gt; :: __ string_type) के लिए' | नोट: उम्मीदवार हैं: | नोट: plb :: plb_ifstream :: plb_ifstream (const plb :: plb_ifstream & amp;) | नोट: 'std :: basic_ostringstream & lt; char & gt; :: __ string_type {aka std :: basic_string & lt; char & gt;} से' const plb :: plb_ifstream & amp; 'के लिए तर्क 1 के लिए कोई ज्ञात रूपांतरण नहीं है। नोट: plb :: plb_ifstream :: plb_ifstream (const char *, std :: ios_base :: openmode) | नोट: 'std :: basic_ostringstream & lt; char & gt; :: __ string_type {aka std :: basic_string & lt; char & gt;} से' const char * 'के लिए तर्क 1 के लिए कोई ज्ञात रूपांतरण नहीं है। नोट: plb :: plb_ifstream :: plb_ifstream () | नोट: उम्मीदवार को 0 तर्क, 1 प्रदान की उम्मीद है |
आपको शायद बदलने की ज़रूरत है:
<पूर्व> plb_ifstream ifile (ostr.str ());
के साथ
plb_ifstream ifile (ostr.str ()। C_str ());
सी स्ट्रिंग सममूल्य प्राप्त करने के लिए
No comments:
Post a Comment