JAM JAM - 4 months ago 25
C++ Question

What is the meaning of auto when using C++ trailing return type?

Instead of usual

void foo (void ) {
cout << "Meaning of life: " << 42 << endl;

allows is an alternative, using the Trailing Return

auto bar (void) -> void {
cout << "More meaning: " << 43 << endl;

In the latter - what is
designed to represent?

Another example, consider function

auto func (int i) -> int (*)[10] {


Same question, what is the meaning of
in this example?


In general, the new keyword auto in C++11 indicates that the type of the expression (in this case the return type of a function) should be inferred from the result of the expression, in this case, what occurs after the ->.

Without it, the function would have no type (thus not being a function), and the compiler would end up confused.