Remix.run Logo
yunnpp 4 hours ago

No. The auto there is doing some lifting so that you can declare the type afterwards. The return type is only defined once.

There is, however, a return type auto-deduction in recent standards iirc, which is especially useful for lambdas.

https://en.cppreference.com/w/cpp/language/auto.html

auto f() -> int; // OK: f returns int

auto g() { return 0.0; } // OK since C++14: g returns double

auto h(); // OK since C++14: h’s return type will be deduced when it is defined

maccard 4 hours ago | parent [-]

What about

auto g() -> auto { return 0.0; }

yunnpp 2 hours ago | parent [-]

0.0 is a double, so I would assume the return type of g is deduced to be double, if that is what you're asking.