我定义了一个字符串对象向量和ofstream对象向量而不初始化它们,然后我初始化它们类似于给数组赋值,以下是我的代码,
std::vector<std::ofstream> myFiles;
std::vector<std::string> myFileNames;
int tmp[4];
for(int k=0; k<3; k++)
{
tmp[k] = myID[k] + '0';
myFileNames[k] = "file";
myFileNames[k] += tmp[k];
myFileNames[k] += " .csv ";
std::cout<< "Opening file:" << myFileNames[k] << std::endl;
myFiles[k].open (myFileNames[k].c_str());
myFiles[k]<< "t,x,y";<<std::endl;
}
编译时没有错误,但是,当我运行它时,它说向量下标超出范围,我不确定是不是因为我没有用固定数量的下标初始化向量,谁能帮我如何定义固定数量的字符串和 ofstream 对象的向量,在我的情况下,它们都是 3 个,任何帮助将不胜感激,谢谢!