I found the original proposal for *C++ structured bindings here. It proposes a way to easily bind multiple return values, i.e.:
auto {a, b} = minmax(data);
But now I see that everyone points to the C++17/C++1z proposal syntax of
auto [a, b] = minmax(data);
Now that I learned "lists are written { like, this }" there comes a new list-syntax? Why? What is the problem with curly braces here?
This is still under debate. It's difficult to be certain which syntax will be least confusing given how many uses there are for [] and {} already.
There's also the risk that "least confusing" and "easiest to parse" will be in conflict.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With