矢量作为对象,push_back错误 - "("标记之前的预期主表达式
Vector as Objects, push_back error - expected primary expression before "(" token
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);
相关文章:
- 有没有办法一次声明相同类型的多个对象,并通过一个表达式立即使用相同的右值初始化它们?
- 我可以制作矢量对象的算术表达式吗?
- 为什么带有指针子对象的文字类类型的 constexpr 表达式不能是非类型模板参数
- 子表达式中临时对象的生存期
- 如何使用条件表达式返回对象指针?
- 在C++中,当表达式涉及对象时,将表达式赋值到对象中时,是否有定义的操作顺序?
- 与基类子对象相关的表达式的动态类型
- 删除未使用新表达式构建的对象实际上可以吗?
- 使用折叠表达式构造一个平凡的对象
- 表达式必须具有指向对象的指针类型(指针向量)
- 表达式必须在C 中具有指针对象类型
- 下标需要数组或指针类型表达式必须具有指针对象类型
- 该表达式必须具有对象指针类型
- 如何将新的 lambda 表达式分配给函数对象?
- 更改对象并将其在同一表达式中使用它是不确定的行为,但是子表达式由逗号运算符分开
- 指针对象使用CPP中的指针表达式进行比较
- 了解左值/右值表达式与对象类型
- 如何将正则表达式模式存储为正则表达式对象或字符串
- 预期表达式对象数组
- 如何使用新的c++0x正则表达式对象在字符串中重复匹配