-2

機能していません。多くのファイルを保持する必要がありますが、名前は異なります。たとえば、file1.txt file2.txt file3.txt の数字はカウンターで、カウンターは X です。

ありがとう。

#include <iostream>
#include <fstream>
#include <string>
#include <sstream>


using namespace std;
using std::string;


string ItoStr (int x);

int main(){

   string cadena;
   int x = 1;
   ofstream fs("nombre" + ItoStr(x) + ".txt"); //Fail line
   fs << cadena;
   fs << cadena;
   fs.close();


    };


string ItoStr (int x){

    string str2;
    stringstream ss;
    ss << x;
    str2 = ss.str();
    return str2;

    };
4

1 に答える 1

0

それを分割して変更するだけです:

ofstream fs("nombre" + ItoStr(x) + ".txt");

に:

string fname = "nombre" + ItoStr(x) + ".txt";
ofstream fs(fname.c_str());

問題は、ofstreams コンストラクターが (使用しているように見える C++98 で) a を取るがconst char *、 (一時的な) を作成していることですstd::string

于 2013-10-20T02:31:43.603 に答える