Самым простым является его кодирование таким образом, чтобы оно вошло в область видимости в первую очередь. Вы можете назначить переменную с результатом оператора в одном назначении. Если вы можете сделать это как одну строку, это также делает его, возможно, более читабельным. Если фактическая обработка слишком длинная, ничто не мешает вам просто ... сделать ее правильной функцией.
let x = if int == 1 { "yes" } else { "no" };
// rest of the code accessing x.
В качестве альтернативы, компилятор позволит вам объявлять неназначенные переменные, если вы правильно назначите их позже, со всеми проверки безопасности во время компиляции на месте. Прочтите документы по RAII (Инициализация ресурсов - инициализация) Документы RAII , чтобы узнать, как это работает. На практике это так просто:
let x;
if i == 1 {
x = "yes";
}
else {
x = "no";
}
// keep doing what you love
Компилятор выдаст ошибку, если есть путь logi c, где x не инициализируется, или если он инициализируется как другой тип. Обратите внимание, что вам также не нужно объявлять его как mut
, так как первое полученное значение останется неизменным. Если, конечно, вы не захотите потом изменить это.