如何在不创建新数组的情况下引用数组



我想在表单中引用我的USERS列表,而不必在创建新列表时创建存储该列表的类的新实例。

创建列表并将其添加到的LoginHandler类。

namespace BG
{
    public class LoginHandler
    {
         public List<User> users = new List<User>();
         public LoginHandler()
         {
            users = new List<User>();
         }

该表单将由一个for循环组成,该循环循环循环到列表中的项数,因此我需要引用它,但不希望必须创建一个新的类实例,因为这会生成一个我不想要的新列表。

我认为您想要的是一个返回对IEnumerable对象的引用的属性。

public class LoginHandler
{
    private List<User> users = new List<User>();
    public IEnumerable<User> Users { get { return users; } }
}

然后,您可以访问该属性,而无需创建副本或公开内部数据成员。

LoginHandler handler = new LoginHandler();
foreach (var user in handler.Users)
{
}

最新更新