Этот пример находится в С#, но я ожидаю, что это применимо и к другим так же легко.
Недавно я обнаружил, что следующее выглядит просто отлично:
int i = Int32.TryParse(SomeString, out i) ? i : -1;
Как-то кажется, что переменная i не должна технически быть доступна в точке, которая появляется в TryParse. Или я был бы прав, если предположить, что int i эффективно объявляет переменную, хотя еще нет конца инструкции?