0

我正在编写一个程序,它需要一个姓名和号码来创建一个学生。然后,我想将这些学生添加到集合中。

但是,我正在努力解决的是如何将学生添加到向量中。

到目前为止,我编写的代码如下所示:

Student stud(name, i);
vector<Student> vS

Student::Student(const string &name, int regNo) : Person(name)
{

}

我想我正在做一些非常愚蠢的事情,但在编程方面我真的很弱。

我基本上是从文件中获取字符串和整数,然后将它们传递给 Student 构造函数。然后我试图创建一个包含所有学生的 Student 类型的向量。但我就是不知道该怎么做。

如果有人知道我需要做什么,那就太好了?我尝试了几种方法,但似乎都没有奏效。

4

2 回答 2

3

vector push_back可以使用插入元素:

vS.push_back(stud);

或者如果 C++11 可用:

vS.emplace_back(name, i);
于 2012-12-23T19:53:58.160 回答
0

寻找的好地方是 c++ 文档。那里也有很好的例子。例如关于矢量: http ://www.cplusplus.com/reference/vector/vector/ 以及关于向矢量添加元素 http://www.cplusplus.com/reference/vector/vector/push_back/

作为附加评论,如果您关心效率,您可以为元素保留空间:

your_vector.reserve(number_of_elements);
your_vector.push_back(your_element);
于 2012-12-23T19:57:56.790 回答