What does the statement
return {};
in C++11 indicate, and when to use it instead of (say)
return NULL;
or
This is probably confusing:
int foo() { return {}; // honestly, just return 0 - it's clearer }
This is probably not:
SomeObjectWithADefaultConstructor foo() { return {}; // equivalent to return SomeObjectWithADefaultConstructor {}; }