using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
namespace LearnThread
{
class Delay
{
public int timePass()
{
static int i=0;
for(i=0; i<100;i++)
{
Thread.Sleep(1000);
}
return i;
}
}
}
Run Code Online (Sandbox Code Playgroud)
错误:修饰符'static'对此项无效
为什么静态是错误的?因为我们可以在C语言中使用,所以我们不能使用static for int?
m-y*_*m-y 16
您不能将本地范围的变量声明为static,这就是您正在做的事情.
您可以为类创建静态字段或静态属性(即它是类的成员),它将驻留在方法之外.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
namespace LearnThread
{
class Delay
{
static int i=0;
public int timePass()
{
for(i=0; i<100;i++)
{
Thread.Sleep(1000);
}
return i;
}
}
}
Run Code Online (Sandbox Code Playgroud)
虽然,这段代码看起来有点愚蠢...为什么在for循环迭代中使用静态字段呢?多次调用该方法可能会导致很多问题.我假设您要么通过玩疯狂的代码来学习C#,要么就是在尝试解决另一个问题并将这些代码投入其中.无论是那个还是......你做错了.:)