gpt4 book ai didi

c# - 通过名称访问静态变量

转载 作者:太空宇宙 更新时间:2023-11-03 10:32:14 24 4
gpt4 key购买 nike

我正在处理一些 Unity C# 脚本。

public class SomeClass {    
public static float radius;
}

我有一个 class 有很多 static 变量(我知道 static 变量可能是一个不好的做法,但我不是实现那些 static 变量的人,我需要使用它们)。

在另一个脚本中,我需要更改这些变量的值。所以我使用 SomeClass.radius = val 访问它们,但我想使用它们的名称访问它们:

SomeFunction(string name) { theVariableCorespondingToTheName = val }

这看起来微不足道,但无法弄清楚如何让它工作(我是 C# 的新手)。我是否需要一个函数来返回我的 class 中包含我的 static 字段的变量的引用?

最佳答案

显然,可以改进具有大量静力学的设计。但是,您似乎无法直接控制它,因此这里有一种使用反射来完成您需要的方法:

typeof(SomeClass).GetField("radius").SetValue(null, val);

关于c# - 通过名称访问静态变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29622433/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com