-3

如果您有一个变量 X 和 Y 并将此代码应用于它们:

int x = 10;
int y = 0;
x++;
y = x;
out(y);

那么代码的顺序对输出至关重要。

我的问题:是否有一个关键字可以让计算机根据变量以特定顺序运行代码?

selOrder为了这个例子而编造的一个关键字。它获取一个布尔值,并用它确定首先执行哪一行。

example:
{
      int x = 10;
      int y = 0;
      bool order = true;
      selOrder(order)
      {
          x++;
      }
      {
          y = x;
      }
      out(y);
}

出:11

这个例子很可笑,它让这个问题看起来很可悲,但我是认真的,即使在这个例子中这个关键词是无用的。我偶然发现了许多可能非常漂亮的代码场景。

4

1 回答 1

5

在 C# 中没有 this 的关键字。以下是一些选项:

if (order)
{
    x++;
    y = x;
}
else
{
    y = x;
    x++;
}

或者:(这让您只需键入每个部分一次,但阅读和运行更复杂)

Action firstAction = () => x++;
Action secondAction = () => y = x;
if (order)
{
    firstAction();
    secondAction();
}
else
{
    secondAction();
    firstAction();
}
于 2013-02-23T13:33:57.307 回答