小编Sri*_*rma的帖子

概念不清

public static List<int> dynamicArray(int n, List<List<int>> qu)
        {
            List<int> ls1 = new List<int>();
            int lastAnswer = 0;
            foreach (List<int> ls in qu)
            {
                int index = (ls[1] ^ lastAnswer) % n;

                if (ls[0] == 1)
                {
                    List<int> s1111 = qu[index];

                    s1111.Add(ls[2]);
                }
                else
                {
                    List<int> s1111 = qu[index];

                    int ind = ls[2] % s1111.Count;
                    lastAnswer = s1111[ind];
                    ls1.Add(lastAnswer);

                }
            }
            return ls1;
        }
Run Code Online (Sandbox Code Playgroud)

在调试时,我发现 qu 列表值正在改变,我很困惑为什么会发生这种情况,因为我没有在任何地方改变 qu 的值。

如果问题很愚蠢,请提前抱歉,但我仍然需要清除我的疑问。

c# debugging logic

1
推荐指数
1
解决办法
45
查看次数

表达式主体函数的奇怪行为

当我使用时

    var frontPage = await GetFrontPage();

    protected override async Task<WordDocument> GetFrontPage()
    {
        return null;
    }
Run Code Online (Sandbox Code Playgroud)

这段代码工作正常,我在 frontpage 变量中得到空值。但是当我将函数重写为

protected override Task<WordDocument> GetFrontPage() => null;

Run Code Online (Sandbox Code Playgroud)

我收到了一个NullReferenceException.

谁能帮助我理解这两种说法之间的区别?

.net c# nullreferenceexception async-await expression-body

-1
推荐指数
1
解决办法
77
查看次数