Here's the thing:
I'm unsure about foo::ints. Is the std::vector initialized properly when I do {1} (version 1), or is it better to use version 2 where I call the constructor explicitly?
Some background: by the time I add the entry to foos I don't have any data to initialize the vector. It's filled later.
So as an alternative you might want to use: foos.push_back({3, {}});
I tried this earlier and was expecting a raging compiler reaching out of the screen strangling me, because that looks kinda mean.
Like: *beep* you compiler, you'll figure it out.
I guess I'll use that though, at least it shows that it's an initializer for a struct.