2017-08-28 8 views
-4

ich mit c eine leere Datei in ubuntu erstellen möchten ++ und ich versucht, viele Möglichkeiten, und es hält versagen und zeigen diesen FehlerWie eine leere Datei in Linux mit C++ erstellen

error: no matching function to 'std::basic_ofstream::open(std::cxxll::...

mein Code:

ifstream f(saltFile.c_str()); 

if (f.good()) 
{ 
    cout << saltFile + " file already existed" << endl; 
} 
else 
{ 
    ofstream file; 
    file.open (saltFile, ios::out); 
    cout << saltFile << " created!" << endl; 
} 
+3

Mögliche Duplikat [Erstellen von Dateien in C++] (https://stackoverflow.com/questions/478075/creating-files-in-c) – Mureinik

+0

'file.open (saltFile.c_str (), ... '. Die C++ 98 Version hat nur einen Prototyp mit 'const char *': http://www.cplusplus.com/reference/fstream/ofstream/open/ – mch

+1

Welchen Compiler benutzen Sie? Haben Sie C++ 11 oder höher aktiviert? – NathanOliver

Antwort

0

Wenn Sie eine C++ 11 oder höher Compiler haben, können Sie verwenden:

file.open (saltFile, ios::out); 

Wenn Sie ein Pre-C++ 11-Compiler, Sie ne ed zu verwenden:

file.open (saltFile.c_str(), ios::out); 
Verwandte Themen