c++中vector如何初始化一个类?

我自定义了一个类(class song),实例化为class song(a,b);如果我用vector<song>songs时,我应该如何在初始化时传…
关注者
9
被浏览
11,687

4 个回答

#include <iostream>
#include <vector>
using namespace std;
class Song
public:
    Song(int a, int b)
        : a(a), b(b)
private:
    int a, b;
int main()
    std::vector<Song> songs;
    //可以这样:
    songs.push_back(Song(1, 2));
    //也可以这样:
    Song s1(2, 3);
    songs.push_back(s1);
    //新标准喜欢这样:
    songs.emplace_back(4, 5);