0

谁能解释一下有什么区别:

Var1 = new List<Variable>();

public Variable Var1{ get; set; }

在哪里

public class Variable 
{
   public string Value { get; set; }
}

它们在哪些方面不同或相同?

任何帮助都很棒。谢谢。

4

3 回答 3

1

1)List<Variable> Var1 = new List<Variable>();

那是声明Var1Variable对象的集合。所以 Var1 将持有Variable

Var1.Add(new Variable());
Var1.Add(new Variable());
Var1.Add(new Variable());

现在我们在 Var1 中有 3 个项目

2)public Variable Var1{ get; set; }

那就是将 Var1 声明为类的属性,并且一次只能取一个值

public class MyClass
{
  public Variable Var1{ get; set; }
}

MyClass c = new MyClass();
c.Var1 = v; //where v is an instance of Variable class
//or
Variable v = c.Var1; //returns an Instance of Variable which is a property of c
于 2012-10-06T08:43:54.233 回答
0

var 是 .NET 提供的数据类型,Var 是隐式类型。隐式类型的局部变量是强类型的,就像您自己声明了类型一样,但编译器确定类型。它为 C# 编程语言中的任何类型起别名。别名类型由 C# 编译器确定。这没有性能损失。Var 是优秀的语法糖。

例如

var str = "Hello World";

编译为

string str = "Hello World";

而这里的变量是一个自定义类,与 C# .NET 的 var 无关。它们无论如何都没有关系。

于 2012-10-06T03:54:36.040 回答
0

var = new List<Variable>();

这将创建一个列表Variable,如果你关心的是关键字,var那么它只是告诉编译器我知道数据类型,所以你继续。

Variable Var1{get;set;}是属性,这允许您设置或获取成员Variable

例如

Var1 = new Variable{
Var1.Value = "abc" // setter;
}

或者

return Var1.Value // getter;
于 2012-10-06T04:01:57.200 回答