Trass3r: >You immediately give the counter-argument? ^^<
I try to give both pros and cons :-) I think when expressions get even more complex 'where' can help. > Another possibility would probably be the following, but it's not as > compact and nice: > > double c; > { > double a = retrieve_a(); > double b = retrieve_b(); > > c = sqrt(a*a + b*b); > } If 'c' has a very complex type, you really want to use 'auto', but you can't there. In functional-style programming types can be very complex and long to write, for example the result of a map(filter(lazy generator)). Bye, bearophile