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

时间:2019-07-18 19:26:37

标签: c#

我们有:

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#不太了解

1 个答案:

答案 0 :(得分:2)

正如评论中提到的那样,您所要问的内容尚不清楚,但我将对此加以刺探。

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

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

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

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

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

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

initial

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

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

int score = 5;

这将带来您想要实现的目标。

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