我尝试将数据写入100个文件gnu_2D_t0_Q_xt_2sol_anal.dat
,gnu_2D_t1_Q_xt_2sol_anal.dat
,...,gnu_2D_t100_Q_xt_2sol_anal.dat
。使用this question作为灵感,我提出了以下代码片段
int m = 100;
for(int k=0;k<m;k++)
{
stringstream aa; // http://www.dreamincode.net/forums/topic/95826-stringstream-tutorial/
aa << k;
filename = "gnu_2D_t" + aa.str() + "_Q_xt_2sol_anal.dat";
files.open(filename.c_str()); // http://www.cplusplus.com/forum/beginner/122208/
for(int i=0;i<SPACE;i=i+1)
{
files << x_begin + (i * h) << setw(18);
files << Q_xt_matrix[i][t_matrix[m]] << setw(18);
files << endl;
}
files.close;
}
但是,它会产生以下错误
error: invalid use of non-static member function files.close;
^
我的代码有什么问题吗?
答案 0 :(得分:2)
close
是一种方法,而不是files
的成员。将最后一行更改为files.close()
。