想要创建许多不同的文件,但使用不同的名称
Want to create many different files, but with different names
我需要创建一堆不同的文件,我想把它们命名为:
"signal1.dat", "signal2.dat", "signal3.dat", ... , "signal100.dat"
这就是我目前拥有的
std::stringstream ss;
std::string out = "signal";
std::string format = ".dat";
std::string finalName;
int TrkNxtSig = 1;
...
[code]
...
ss << out << TrkNxtSig << format;
finalName = ss.str();
ofstream output(finalName);
TrkNxtSig++;
我收到这个错误
error: no matching function for call to ‘std::basic_ofstream<char, std::char_traits<char> >::basic_ofstream(std::string&)’
/usr/include/c++/4.4/fstream:623: note: candidates are: std::basic_ofstream<_CharT, _Traits>::basic_ofstream(const char*, std::_Ios_Openmode) [with _CharT = char, _Traits = std::char_traits<char>]
/usr/include/c++/4.4/fstream:608: note: std::basic_ofstream<_CharT, _Traits>::basic_ofstream() [with _CharT = char, _Traits = std::char_traits<char>]
/usr/include/c++/4.4/iosfwd:84: note: std::basic_ofstream<char, std::char_traits<char> >::basic_ofstream(const std::basic_ofstream<char, std::char_traits<char> >&)
我不知道那个错误信息在告诉我什么。怎么了?
它告诉您,ofstream
没有以std::string
为参数的构造函数。
请改用ofstream output(finalName.c_str());
。
这已经在C++11中得到了修复。如果您正在使用gcc,请尝试将其传递给-std=c++0x
。
相关文章:
- 终端不会为C++文件创建.exe文件吗
- 如何从具有两列的.txt文件创建并行数组?
- 从 .lib 文件创建一个.dll文件
- 如何从输入文件 c++ 创建随机名称生成器
- 无法从 cso 文件创建顶点着色器(从 fx 文件创建)
- 如何为多个目录中的多个文件创建生成文件?
- 在编译时从 c++ 文件创建枚举
- 如何在运行时从 c++ 中的 DLL 文件创建对象?
- 文件创建并不总是成功
- 如何使用 QFile、c++ 从文件创建整数数组
- 您可以使用 makefile 从 .o 对象文件创建 C++ 文件吗?
- 从函数中的dat文件创建一个2维数组
- 如何为 cpp 和 h 文件创建别名(并忽略编译器__attributes__)
- 如何从现有的生成文件创建 CMake 文件?
- 为什么我无法使用文本文件创建文件映射?
- 通过读取文件创建映射<字符串,矢量>时如何管理内存<string>
- 从文本文件创建 2D 字符串矢量
- ofStream: - 尽管文件创建了,但文本文件上没有输出
- 从语言文件创建JSON对象
- 将文本文件创建到节点.js的插件C++