c# - C# 不识别变量
问题描述
我正在尝试与 void 目标中生成的 p 值进行比较,我aim()
在计时器内运行该函数,但是当涉及到if (score>p)
它时它无法识别P
变量,我该如何使其使 if 语句起作用,它在哪里进行比较P
在目标函数中生成的值。
void aim()
{
int p;
p = n.Next(2, 5);
OppScore.Text = (string.Format("Target Score: {0}", p));
}
Random m = new Random();
Random n = new Random();
public void RunTimer_Tick(object sender, EventArgs e )
{
target();
if (lives <= 0)
{
left--;
lives = 2;
TimesLeft.Text = (string.Format("attempts left: {0}", left));
TimesLeft.Text = Convert.ToString(left);
}
if (left <= 0)
{
this.Hide();
new Game_Over().Show();
RunTimer.Stop();
}
if (counter<1)
{
aim();
counter++;
}
if (score > p)
{
this.Hide();
new Winner().Show();
RunTimer.Stop();
}
}
解决方案
刘易斯,
正如所有人在评论中所说,您已经在本地初始化了“p”变量。
RunTimer_Tick(...)
不同于aim(...)
所以如果你想让它工作那么你必须将变量'p'全局放置,以便它的值将保留在整个程序中,而不仅仅是将它用作局部变量。
我希望你明白我们想说的话。
推荐阅读
- r - 按多列过滤
- databricks - 如何在数据块中创建个人访问令牌?
- python - python烧瓶限制连接到来自本地网络的请求?
- python - 如何在 Odoo 14 中隐藏过滤器
- python - 此连接正在使用 {tls_version},它现在无法在 Linux 上部署 Flask 应用程序
- javascript - 使用 React 钩子的轮播在移动设备而非桌面设备上滑动不顺畅
- android - 如何在中心绘制一个透明矩形?
- python - 在 Jupyter 笔记本的循环中使用降价
- wordpress - 在 woocommerce 可预订产品的商店页面上显示下一个可用日期
- java - com.company.Main.this' 不能从静态上下文中引用