我收到错误
main.cpp: In function 'int main()':
main.cpp:43:16: error: request for member 'getF' in 'cor', which is of non-class type 'corMatrixFermion(MatrixV)'
myfile << cor.getF;
^
这是我班级的标题:
class MatrixV{
public:
MatrixV(std::string file);
MatrixV(Eigen::MatrixXd matrix);
MatrixV(double arr[], int arrsize);
Eigen::MatrixXd getV();
Eigen::VectorXd getSigma();
int getr();
Eigen::MatrixXd getO1();
Eigen::MatrixXd getO2();
Eigen::MatrixXd getE();
Eigen::MatrixXd getVStrich();
private:
int size;
Eigen::MatrixXd V;
Eigen::VectorXd Sigma;
int r;
Eigen::JacobiSVD<Eigen::MatrixXd, Eigen::NoQRPreconditioner> svd;
};
这里是main.cpp
int main(){
std::srand(time(0));
DataFromFile StartValues("StartValues");
double arr[4];
arr[0] = StartValues.get(1);
arr[1] = StartValues.get(2);
arr[2] = StartValues.get(3);
arr[3] = StartValues.get(4);
MatrixV V(arr, 4);
corMatrixFermion cor(MatrixV V);
std::ofstream myfile;
myfile.open ("corfunction.txt");
myfile << cor.getF();
myfile.close();
}
还有其他课程,但我不认为,他们会导致问题。你知道吗,我做错了什么?如果您需要更多信息,请告诉我。在我看来,这不是通常的&#34;成员&#34; -constructor-problem的请求。但也许我错了......
答案 0 :(得分:1)
这看起来很狡猾:
corMatrixFermion cor(MatrixV V);
这声明cor
是一个函数。您可能打算将V
传递给corMatrixFermion
构造函数:
corMatrixFermion cor(V);