如何用Unity C#使用`Action`?

问题描述 投票:5回答:2

我想使用 Times 在Unity中的功能,通过以下方式 本网站 我使用这个脚本。

public static class IntExtensions
{
    public static void Times(this int i, Action<int> func)
    {
        for(int j = 0; j < i; j++)
        {
            func(j);
        }
    }
}

但它会导致错误 Assets/Resources/Scripts/Board.cs(27,40): error CS0246: The type or namespace name行动1' could not be found. Are you missing a using directive or an assembly reference?.

看来没有 Action 在Unity C#中。

有办法在Unity中使用该函数吗? 如果我想在我的Unity项目中使用,我应该把文件放在哪里?

c# unity3d
2个回答
11
投票

Action<T> 委托类型定义在 System 命名空间 - 确保你有 using System; 作为一个指令放在CS文件的顶部。


0
投票

如果你只想使用一次,那么你也可以使用像System.Action func这样的指令,但如果在脚本中使用超过1次,那么你应该使用 "使用系统;"

© www.soinside.com 2019 - 2024. All rights reserved.