vector
4 つのstring
オブジェクトを作成したいのですがofstream
、string
オブジェクトは出力ファイルに名前を付けるために使用され、ofstream
オブジェクトはデータを書き込むために使用されます。
#include <vector>
#include <fstream>
std::vector<std::string*> myFileNames;
std::vector<std::ofstream*> myFiles;
int id[4]={1,2,3,4};
for(int i=0; i<4; i++)
{
myFiles.push_back(new std::ofstream);
myFileNames.push_back(new std::string);
}
int tmp[4];
for(int i=0; i<4; i++)
{
tmp[i] = id[i] ;
myFileNames[i] = "file";
myFileNames[i] += tmp[i];
myFileNames[i] += " .csv ";
std::cout<< "Opening file:" << myFileName[i] << std::endl;
myFiles[i].open (myFileNames[i].c_str());
myFiles[i]<< "a,";
}
問題は、この行から-myFileNames[i] = "file";
エラーが発生することです。この方法でメンバーに値を与えることができないmyFileNames
ようです。4つの異なる名前で4つのファイルを作成し、それらを与えたいなど、誰かがこれを手伝ってくれますか?ループ内の値。