unity Action传参
时间: 2023-09-30 07:10:58 浏览: 113
Unity中的Action是一种委托类型,可以用于定义不带参数和返回值的方法。如果需要在Action中传递参数,可以使用lambda表达式或者匿名方法来实现。
例如,定义一个Action类型的方法:
```csharp
public void DoSomething(Action<int> callback)
{
// 在这里调用callback,将一个int类型的参数传递给它
callback(42);
}
```
然后,在调用这个方法时,可以传递一个lambda表达式或者匿名方法:
```csharp
DoSomething((int result) =>
{
Debug.Log("The result is: " + result);
});
```
其中,lambda表达式 `(int result) => { Debug.Log("The result is: " + result); }` 接收一个int类型的参数,并在控制台输出结果。在方法内部,调用 `callback(42)` 时,会将参数 42 传递给lambda表达式,从而执行输出结果的操作。
阅读全文