c# - 静态方法中的变量是否会自动变为静态,因为它们在 c# 中的静态范围内?

标签 c# variables methods static

public static void DoSomething()
{
int a;
string b;

//..do something
}

在上面的例子中,我声明了两个变量。 它们变成静态的是因为包含它们的方法是静态的吗?

最佳答案

没有。只有方法是静态的而不是变量。

来自 MSDN:

C# does not support static local variables (variables that are declared in method scope).

如果想在静态成员中有静态变量,在静态方法外声明,

private static int _var = 0;
public static void SampleMethod()
{
     _var++;
} 

关于c# - 静态方法中的变量是否会自动变为静态,因为它们在 c# 中的静态范围内?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15224050/

相关文章:

java - 变量似乎未初始化

java - Java中使用递归方法计算字符串中的特定字符

Java Enum 作为 Enum 中的泛型类型

c# - 将属性装饰器添加到部分类

c# - jquery Ajax 调用仅触发一次

c# - 将 URI 映射到 LINQ-to-SQL 中的字符串字段

java - 一个可以接受不同类型的变量?

c# - 是否可以使用 SQLite.Net-PCL 创建内存数据库?

PHP:用变量名回显常量

java - 为什么值会在方法之外发生变化?