Why does initialization of array of pairs still need double braces in C++14?
This appears to be a parsing ambuguity somewhat similar to the famous most vexing parse. I suspect what’s going on is that: If you write std::array<std::pair<int, int>, 3> b {{1, 11}, {2, 22}, {3, 33}}; the compiler has two ways to interpret the syntax: You perform a full-brace initialization (meaning the outermost brace refers to … Read more