为什么编译器抛出错误:无效使用'Student :: Student'|
这是内容文件(ListOfStudent):1234 46567 这是我的代码:
class Student
{string ML,MSV;
public:
Student();
Student(string ML,string MSV );
~Student();
void Out();
};
int main()
{
vector<Student>ListOfStudent;
{
ifstream inf("ListOfStudentFile");
Student st;
while(inf){
string ML,MSV;
inf>>ML>>MSV;
st.Student(ML,MSV);
ListOfStudent.push_back(st);
}
}
return 0;
}
Student::Student(string ML,string MSV)
{
this->ML=ML;
this->MSV=MSV;
}
答案 0 :(得分:2)
您不能显式调用构造函数。 您应该写过:
while(inf){
string ML,MSV;
inf>>ML>>MSV;
ListOfStudent.emplace_back(ML,MSV);
}
按照Hemil的建议,如果您使用的是C ++ 11,则可以通过直接传递如下构造函数的参数来避免构造临时文件:
import numpy as np
import matplotlib.pyplot as plt
sampling_rate = 10000
n = 10000
signal_freq = 4000 # must be < sampling_rate/2
amplitude = 100
t=np.arange(0,n/sampling_rate,1/sampling_rate)
sine_wave = amplitude*np.sin(2 * np.pi *signal_freq*t)
plt.subplot(211)
plt.plot(t[:30],sine_wave[:30],'ro')
spectrum = 2/n*np.abs(np.fft.rfft(sine_wave))
frequencies = np.fft.rfftfreq(n,1/sampling_rate)
plt.subplot(212)
plt.plot(frequencies,spectrum)
plt.show()
对于像您这样的简单结构,无论如何都不应有任何区别,因此请使用您喜欢的任何东西。