矢量作为对象,push_back错误 - "("标记之前的预期主表达式

Vector as Objects, push_back error - expected primary expression before "(" token

本文关键字:表达式 对象 push 错误 back      更新时间:2023-10-16
    for(int i = 0; i < classSize; i++){
    cout << "Enter Student Name: ";
    cin >> name;
    cout << "Enter Student Grade: ";
    cin >> grade;
    Student(name, grade);
    newMyClass.push_back(Student);
    cout << endl;
}

newMyClass.push_back(student);获取错误 - 在")"令牌之前。我会上传整个代码以更好地了解情况,但它包含三个支持文件,因为它是面向对象的程序。

Student是类名称,而不是该类的实例。

仅调用 Student(name, grade);创建一个未命名的类实例,因此无法在其他任何地方使用。临时/匿名变量。

调用newMyClass.push_back(Student);只是句法是错误的。

您需要:

Student student(name, grade);
newMyClass.push_back(student);