C#中的静态变量和static关键字 5

在C++编程时,我在某一个函数中使用static关键字来记录函数被调用的次数如staticintcount=0;++count;但是在C#中不允许这样使用static关键... 在C++编程时,我在某一个函数中使用static关键字来记录函数被调用的次数
如static int count=0 ; ++count;
但是在C#中不允许这样使用static关键字,那么C#如何才能达到这种效果呢?
展开
 我来答
syht2000
高粉答主

推荐于2018-04-24 · 关注我不会让你失望
知道大有可为答主
回答量:3万
采纳率:79%
帮助的人:1.4亿
展开全部
C#中的static变量是属于类的,所以不能在方法中定义
public class Test 

    public static int count = 0;//正确,如果不需要在外面访问也可不加public
    public void 自定义方法()
    {
    static int count2 = 0;//错误
    }
}
//如果有加public,那外面就可以用Test.count来访问这个变量
追问
那如果我要在一个for循环里面加一个静态的变量,用来计算次数,如何做呢?  在C#中
追答

我不太清楚你的具体用途,因为c#中的static与c++中差别很大,如果你是想每次进入这个方法的时候,都还能保持上次的值,那就跟上面一样就行了,即

public class Test 

    public static int count = 0;
    public void run()
    {
      for(int i=0;i<5;i++)
         {
           count+=i;
        }
    }
}
static void Main()
{
   Test t = new Test();
   t.run();
   t.run();
   int i = Test.count; //此时的Test.count即为20
}
cdinten
2013-12-11 · TA获得超过6589个赞
知道大有可为答主
回答量:3562
采纳率:56%
帮助的人:1339万
展开全部
可以吧,但是静态变量只能在静态方法中被修改。你修改该值的代码很有可能是实例方法,所以不行
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友b70bfef
2013-12-11 · TA获得超过356个赞
知道小有建树答主
回答量:401
采纳率:0%
帮助的人:224万
展开全部
静态遍历只能使用在静态方法中使用 ok
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式