3 ms·
CppCon 2017: Louis Brandy “Curiously Recurring C++ Bugs at Facebook”
- lainga 8y ago#6 really got me (won't spoil it for anyone, but): is this the same reason arr[n] and [arr]n are the same in C? The {square,curly} braces are just sugar?
- caraffle 8y agoI don't think it's the same. arr[n] and [arr]n works because brackets simply expand to * (arr + n) in the first case, * (n + arr) in the second. C++ dictates if a statement can be interpreted as a declaration, it will be (see "The most vexing parse"). Universal initialization was introduced to provide another way to ensure this doesn't happen. https://softwareengineering.stackexchange.com/questions/133688/is-c11-uniform-initialization-a-replacement-for-the-old-style-syntax?utm_medium=organic&utm_source=google_rich_qa&utm_campaign=google_rich_qa https://softwareengineering.stackexchange.com/questions/1336...