Unity C# 使用 Func 委托创建具有返回值的 Action
在 Unity 中,Action 是一种委托类型,用于表示没有参数和返回值的方法。如果你想要一个具有返回值的 Action,你可以使用 Func 委托类型来实现。
Func 委托类型可以表示具有指定参数和返回值的方法。在 Unity 中,Func 委托类型最多可以接受 16 个参数,并且最后一个参数表示返回值。
以下是一个示例代码,演示如何使用具有返回值的 Action:
using UnityEngine;
using System;
public class Example : MonoBehaviour
{
private Func<int, int, int> addNumbers;
private void Start()
{
// 创建一个具有返回值的 Action
addNumbers = (a, b) =>
{
return a + b;
};
// 调用具有返回值的 Action,并打印返回结果
Debug.Log(addNumbers.Invoke(2, 3)); // 输出:5
}
}
在上面的示例中,我们创建了一个 Func<int, int, int> 类型的变量 addNumbers,它接受两个 int 类型的参数,并返回一个 int 类型的值。我们使用 Lambda 表达式定义了 addNumbers 的具体实现,即将两个参数相加并返回结果。然后,我们使用 Invoke 方法调用 addNumbers,并打印返回结果。
请注意,我们可以使用 Invoke 方法或直接使用 addNumbers 方法名来调用具有返回值的 Action。
原文地址: https://www.cveoy.top/t/topic/qmwB 著作权归作者所有。请勿转载和采集!