#include <vector>
#include <iostream>
enum Mon : int { A = 5, B, C };
struct M {
explicit M(Mon m, Mon n) : v { 1, m } {}
std::vector<Mon> v;
};
int main() {
Mon m = A, n = B;
M moo { m, n };
for (constauto& m : moo.v)
std::cout << m << ' ';
std::cout << '\n';
}
If you run this code you'll get:
5
as L7 initialises v with 1 item of value m which is A which is 5. Hence the one item output of 5.
Which for the vector reference given above is (3).