Вызов строки или внутри if или попытка извне - PullRequest
1 голос
/ 24 декабря 2011

Мне нужна помощь с чем-то, пожалуйста.

Возможно, есть какое-то невероятно простое решение для этого, но когда я пытаюсь объявить значение внутри тега if или try, и я пытаюсь вызвать их извнеЯ просто получаю сообщение об ошибке «имя« x »не существует в текущем контексте»

Есть предложения?Вот пример того, что я имею в виду

try {
    bleh = 5; }

x = bleh

Ответы [ 6 ]

1 голос
/ 24 декабря 2011

Вы объявили переменную внутри блока try / if.Итак, область видимости переменной заканчивается, когда строка "}" выполняется.Вам нужно сделать что-то вроде этого:

int bleh = 0;
try
{
   bleh = 5;
}catch(Exception ex){}

x = bleh
1 голос
/ 24 декабря 2011

Вы должны объявить свои переменные вне этого блока контекста:

int blah;

if (somevalue == 0)
{
  bleh = 5;
}
else if (somevalue == 1)
{
  bleh = 2;
}

x = bleh    

В вашем коде переменная bleh доступна только в этой области try { }. Это верно для if {}, switch {}, using {} и т. Д.

1 голос
/ 24 декабря 2011

Объявите это вне if / try.

int bleh;
try
{
    bleh = 5;
}

x = bleh
1 голос
/ 24 декабря 2011

Объявите ваши переменные вне ваших блоков try. Объявление переменной позволяет назначить ее, но она доступна только в пределах scope . Это фундаментальное понятие в языках программирования, поэтому следует прочитать статью, приведенную выше.

int bleh;
if (somevalue == 0)
{
bleh = 5;
}
else if (somevalue == 1)
{
bleh = 2;
}

x = bleh
0 голосов
/ 24 декабря 2011
int bleh=0;
try
{
    bleh = 5;
}

x = bleh
0 голосов
/ 24 декабря 2011
int bleh = 0;
try
{
   bleh = 5;
}
x = bleh
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...