| ▲ | Panzerschrek 3 days ago | |
> if (const auto& [is_successful, error_message] = foo(n)) I don't like it. It's hard to reason what exactly serves as condition variable. | ||
| ▲ | daemin 3 days ago | parent | next [-] | |
Should probably make it explicit in this case, something like: if (const auto& [is_successful, error_message] = foo(n); is_successful) In a more normal scenario you'd expect to use std::expected here rather than a custom struct with an operator bool. | ||
| ▲ | addaon 3 days ago | parent | prev | next [-] | |
The return value of foo(n), converted to bool, acts as the condition variable… | ||
| ▲ | porise 2 days ago | parent | prev [-] | |
Yeah I wouldn't like this in a code review. Add one more line of code so I don't have to investigate foo(). That's my fundamental gripe with C++ int i = 0; function_0(i,...); ... function_9(i,...); which one changes i? It's not obvious in a code review due to default mutable references. | ||