@Zimaell

Как задать локальную переменную в свиче?

Делаю вроде простую конструкцию

public int Test(){
  string yx1, yx2, yx3;
    foreach(KeyValuePair<string, Cell> kv in Cells){
      Cell obj = kv.Value;
      int x = obj.x;
      int y = obj.y;
      for(int n = 0; n < 8; ++n){
        switch(n){
          case 0: yx3 = y+"-"+(x+1); break;
          case 1: yx3 = y+"-"+(x-1); break;
          ..........................................................................
          }
       Debug.Log(yx3);
..........................................................................

то есть сразу в методе задаю локальные переменные yx1, yx2, yx3, далее в цикле и свиче их переопределяю, в дебаге пытаюсь вывести результат, а мне ошибку выдает
error CS0165: Use of unassigned local variable 'yx3'

мол yx3 не определена, в чем тут причина?
  • Вопрос задан
  • 109 просмотров
Решения вопроса 2
freeExec
@freeExec
Участник OpenStreetMap
В том что она живёт только внутри свича. А ты её почему-то дёргаешь за его приделами.
Ответ написан
Нужно проинициализировать переменную yx3 за пределами switch.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы