在if或try内部从外部调用string或in

本文关键字:外部调用 string in 内部 if try | 更新日期: 2023-09-27 18:18:41

我需要一些帮助。

可能有一些非常简单的解决方案,但当我试图在if或try标签中声明一个值,并尝试从外部调用它们时,我只是得到错误'名称'x'不存在于当前上下文中'

有什么建议吗?下面是我的意思的一个例子

try {
    bleh = 5; }
x = bleh

在if或try内部从外部调用string或in

在try块之外声明变量。声明变量允许您对其进行赋值,但只能在作用域中访问它。这是编程语言中的一个基本概念,应该阅读上面链接的文章。

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

在if/try之外声明。

int bleh;
try
{
    bleh = 5;
}
x = bleh

你必须在作用域块之外声明你的变量:

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

在您的代码中,变量bleh仅在该try { }区域内可用。对于if {}switch {}using {}等都是如此。

在try/if块中声明了变量。因此,当"}"行被执行时,变量的作用域结束。你需要做这样的事情:

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