繁体   English   中英

在同一个类中创建一个类的列表?

[英]Creating a List of a class within the same class?

我正在练习 C# 并且只学习了大约一个月。 我有一个问题可能是初学者方面的问题,所以我希望有人不介意为我回答。

我有一个名为 yourCharacter 的类。 在这个类中包含有关某人角色的所有信息。 我想让用户能够创建一个新角色,所以我创建了一个方法/函数来这样做。 我的问题是,我可以在 yourCharacter 中放置一个函数来创建 yourCharacter 列表吗? 这是可行的吗? 这样做是不好的形式吗? 我应该在我的 Main 类中创建这个列表,然后在主类中调用一个函数来做到这一点吗?

我希望我的问题足够清楚,如果您需要更多详细信息,请告诉我。 我想这样做的唯一原因是因为在我的脑海中,将我的方法/函数与它正在操作和/或使用的类进行分组更有意义。

class yourCharacter{

     //insert a bunch of variables here


     public static void newChar(){

          List newCharacter = new List<yourCharacter>();

     }
}

你所拥有的肯定是可行的。

一个类可以包含它自己作为一个成员。 这在某些情况下可能有意义,但请考虑您的情况,看看它是否适用。 在您的情况下,您似乎正在尝试建立一种对字符进行分组的机制 - 但这不是一个好方法。 为什么? 继续阅读...

假设你有一个盒子。 这个盒子里面包含另一个盒子……那个盒子里面可以包含另一个盒子……所以在这种情况下,如果我创建了一个代表这种盒子的类,那么将那个类添加到自身中可能是有意义的。 制作这样的类代表现实中一个盒子包含其他盒子的系统。

你想抽象什么系统,以便一个字符包含其他字符是有用的? 我能想到一些事情:让我们想象一下你游戏中的一个角色可以吞下其他角色,而他们会住在他的肚子里......

如果您想将它们分组 - 您可能需要使用另一个类来代表您的角色分组的系统,如下所示:假设您的游戏有一个冒险派对! 冒险派对可以邀请其他人加入,他们一起去寻找。 假设这个冒险派对有一个领导决定谁可以加入,谁不能。 您仍然可能不会创建包含其他字符的字符......您宁愿创建一个名为“AdventureGroup”的类,其中包含“普通”党员和领导者的列表,您将分配一个表示“组昵称”的字符串”,以及所有其他将群体表示为一个实体的事物。 类似的东西......你明白了。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM