如何在 main 之外的函数中使用列表

本文关键字:函数 列表 main | 更新日期: 2023-09-27 18:32:59

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Lazo
{
    class Program
    {
        List<string> L = new List<string>();
        static void Main(string[] args)
        {
            //List<string> L = new List<string>();
            L.Add("L");
            L.Add("A");
            L.Add("Z");
            L.Add("O");
            izbrisiElement("test");
        }
        static void izbrisiElement(string element_brisi)
        {
            for (int i = 0; i < L.Count - 1; i++)
            {
                if (L[i] == element_brisi)
                {
                    //do something
                }
            }
        }
    }
}

我想在 main 之外的其他函数中使用在 main 中创建的列表。我已经尝试过在主内部和外部主,但没有一个有效。我不确定我的错误在哪里。谁能帮我?

如何在 main 之外的函数中使用列表

Main方法是static的,这意味着它不属于任何实例,但您将列表声明为实例字段。因此,当您在方法中访问它时,这意味着您正在尝试访问当前实例的成员,换句话说:this.L ,但this static上下文中不存在。

你需要让它static

static List<string> L = new List<string>();

你应该把它声明为静态的:

static List<string> L = new List<string>();

以便从静态方法使用。