I came across the following syntax for the push_back function. Vertex is just a structure that holds the three floats x, y and z. The second line looks just like would write it. But the first line looks weird to me. In the video where this was explained it was said that this is done with the member initializer list but it looks more like implicit conversion. I am just confused by the curly brackets there. Can anyone explain why this syntax works?
std::vector<Vertex> vertices;
vertices.push_back({ 1, 2, 3 });
vertices.push_back(Vertex(1, 2, 3));