0
我的问题是关于定义为类的变量。我告诉你我的问题。影子变量
我已经定义了这个类:
class Measure {
int N;
double measure_set[];
char nomefile[];
double T;
public:
void get();
void printall();
double mean();
double thermal_comp();
};
我想方法去做到以下几点:
- 从.dat文件读取数和保存到measure_set阵列;
- 读取用户输入并将其保存到变量T中;
这里是我做了什么:
void Measure::get()
{
cout << "Insert filename:" << endl;
cin >> nomefile;
cout << endl;
cout << nomefile << endl;
cout << endl;
int M=0;
int nmax=50;
ifstream f;
f.open(nomefile);
while(M<nmax)
{
f >> measure_set[M];
if(f.eof())
break;
M++;
}
f.close();
N=M+1;
cout << "Insert temperature:" << endl;
cin >> T;
cout << endl;
}
什么情况是,我注意到,T在measure_set[0]
记忆。为什么会发生这种情况,我如何编写一个工作代码?我不是C++的专家,只是将它用于计算目的,尽管我可以用其他方式解决我的问题,但我想学习如何使用C++进行这项工作。非常感谢!
这不是有效的C++代码。如果你想要一个动态大小的数组,可以使用'std :: vector'。 – rightfold
谢谢你们,最大的错误是在类头中定义该向量[],我不知道它无法完成。其他建议对编写更好的代码也很有用。再次感谢! ^^ –