C++ 类的成员函数是';在函数中不能识别

C++ 类的成员函数是';在函数中不能识别,c++,C++,我有一个clss学生,我在存储库的同一个标题中使用了它的成员函数,并没有问题。。。但是现在在这个函数中我得到一个错误: ..\StudentRepository.cpp:22:7: error: request for member 'setName' in 'st', which is of non-class type 'Student()' 这就是功能: void StudentRepository::loadStudents(){ ifstream fl; fl.ope

我有一个clss学生,我在存储库的同一个标题中使用了它的成员函数,并没有问题。。。但是现在在这个函数中我得到一个错误:

..\StudentRepository.cpp:22:7: error: request for member 'setName' in 'st', which is of non-class type 'Student()'
这就是功能:

void StudentRepository::loadStudents(){
    ifstream fl;
    fl.open("studs.txt");
    Student st();
    string s,ss;
    int loc;
    if(fl.is_open()){
        while(!(fl.eof())){
            getline(fl,s);
            loc = s.find(",");
            ss = s.substr(0,loc);
            st.setName(ss);

        }
    }
    else{
        cout<<"~~~ File couldn't be open! ~~~"<<endl;
    }
    fl.close();

}
 void StudentRepository::editStudent(Student A){
    int i;
    i = findByName(A.getName());
    if( i != 0 || i != NULL){
        students[i].setGroup(A.getGroup());
        students[i].setId(A.getID());
    }
    else{
        throw RepoException("The name does not exist!");
    }
    saveStudents();
}
应该是:

 Student st;
Student st()
不创建类型为
Student
的对象
st
,它以名称
st
声明一个函数,该函数不带参数,并返回
Student
对象

这有时被称为<强>最烦琐的解析<强> > C++ > 应该是:

 Student st;
Student st()
不创建类型为
Student
的对象
st
,它以名称
st
声明一个函数,该函数不带参数,并返回
Student
对象


C++中有时称为<强>最烦琐的解析< /Prime> .< /P> < P>从“代码> ST/<代码>声明中删除括号。

Student st();
Student st()

    • 删除
      st
      声明中的括号

      Student st();
      Student st()
      

      这是…isss…C++最烦人的解析!帮自己一个忙,用叮当声编译。这是…isss…C++最烦人的解析!帮你自己一个忙,用叮当声编译。