की त्रुटि दिखाई दे रहा है क्योंकि आप fs
दो अलग अलग तरीकों दो बार घोषित किया है तो आपको कोई त्रुटि मिलती है; लेकिन मैं उस कोड के कुछ भी नहीं रखूंगा, क्योंकि यह सी ++ और सी ++/सीएलआई का अजीब मिश्रण है।
आपके प्रश्न में यह स्पष्ट नहीं है कि आप मानक सी ++ या सी ++/सीएलआई करना चाहते हैं; यह मानते हुए कि आप चाहते हैं "सामान्य" सी ++, आपको क्या करना चाहिए:
#include <fstream>
#include <iostream>
// ...
int main()
{
// notice that IIRC on modern Windows machines if you aren't admin
// you can't write in the root directory of the system drive;
// you should instead write e.g. in the current directory
std::ofstream fs("c:\\k.txt");
if(!fs)
{
std::cerr<<"Cannot open the output file."<<std::endl;
return 1;
}
fs<<"ghgh";
fs.close();
return 0;
}
सूचना है कि मैं के बाद से सभी new
सामान हटाया बहुत बार आप C++ इसकी आवश्यकता नहीं है - तुम सिर्फ ढेर पर धारा वस्तु आवंटित कर सकते हैं और आपके कोड में उपस्थित स्मृति मेमोरी के बारे में भूल जाओ, क्योंकि सामान्य (गैर जीसी-प्रबंधित) पॉइंटर्स को कचरा संग्रह के अधीन नहीं किया जाता है।
आप यह मानते हुए कर रहे हैं एक देशी समाधान निम्न काम करता है ठीक से खुश:
fstream *fs =new fstream(filename,ios::out|ios::binary);
fs->write("ghgh", 4);
fs->close();
delete fs; // Need delete fs to avoid memory leak
हालांकि, मैं fstream के लिए गतिशील स्मृति का उपयोग नहीं होता
स्रोत
2011-03-19 14:45:53
कृपया अपनी पोस्ट संपादित करें और आपके पास सही त्रुटि संदेश जोड़ें। इसके अलावा पूरा कोड (हेडर के साथ ठीक से स्वरूपित) शायद मदद करेगा। – Mat
@user: 'FileStream' कहां से आता है? आप दो धाराएं क्यों बना रहे हैं? आप अपनी धाराओं को गतिशील रूप से क्यों बना रहे हैं? क्या आप एक जावा प्रोग्रामर हैं जो सी ++ पर स्विच हो गए हैं? –
फाइलस्ट्रीम? यह एक .NET कक्षा सही है? क्या आप सी ++ करने की कोशिश कर रहे हैं? या सी ++/सीएलआई? –