繁体   English   中英

C#:如何获取变量的初始值?

[英]C#: How to get initial value of variable?

我们有:

string helloWorld = "Hello world!";
void someVoid() {
  helloWorld += " additional value";
}

但是必须在不创建额外变量的情况下访问初始值:

string helloWorld = "Hello world!";
string initialHelloWorld;
MyClass() { // Constructor
  initialHelloWorld = helloWorld;
}
void someVoid() {
  helloWorld += " additional text";
}

我怎样才能做到这一点? 抱歉,您对C#不太了解

正如评论中提到的那样,您不清楚您要问的是什么,但我要对此稍作讨论。

string initial = "Hello World"; // Here is our initial value

string modified = initial + ", how are you doing?"; // Our modified value

modified将包含修改后的值(返回了一个新的级联字符串-所以我认为说它是严格修改的是不正确的),但是您仍然可以访问initial ,它将包含原始值。 我怀疑您正在尝试做其他事情,但是,这有点像是水上试验的问题,如果您可以提供更具体的信息,我将更新此答案。

编辑:鉴于您上面的评论,我认为我们可以为您提供帮助

因此,您希望显示字符串的值可以更改,例如游戏中的得分。 在C#中,这可以通过多种方式实现,我通常建议使用字符串插值,但是不确定Unity的C#风格是否支持该功能。

我们实际上要跟踪的是两件事...

string template = "Your score is {0}";

int score = 5;

要格式化它以便工作,我们只需要:

string result = string.Format(template, score);

这将导致您想要实现的目标。

编辑2:我强烈建议您暂时退出Unity,并按照一些C#教程来理解该语言,然后再进入游戏世界:)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM