C#中int a{{get int b=1+2;return b;}}这种用法和int a(){ int b=1+2;}有什么区别
时间: 2024-09-24 16:18:25 浏览: 26
在C#中,`int a{{get { int b=1+2; return b; }}}`和`int a() { int b=1+2; }`是两种不同的语法结构。
1. `int a{{get { int b=1+2; return b; }}}`这种用法通常出现在属性的定义中。具体来说,这是定义一个带有 getter 的属性,其中 `a` 是属性名,`get` 关键字后面是一个代码块,用于计算属性值。在这个例子中,当访问属性 `a` 时,会执行 `get` 代码块中的代码,计算并返回 `b` 的值(即 `1+2` 的结果)。
示例:
```csharp
public class MyClass
{
private int a {
get {
int b = 1 + 2;
return b;
}
}
}
```
2. `int a() { int b=1+2; }` 这是一个方法的定义,其中 `a` 是方法名,方法体中的代码会计算并返回 `b` 的值。在这种情况下,调用 `a()` 方法时会执行方法体内的代码。
示例:
```csharp
public class MyClass
{
public int a() {
int b = 1 + 2;
return b;
}
}
```
总结一下,这两种用法的主要区别在于:
- `int a{{get { int b=1+2; return b; }}}` 是属性的 getter,用于获取属性值。
- `int a() { int b=1+2; }` 是方法的定义,通过调用方法来获取返回值。
阅读全文