C# 如何创建随对象自动更新的列表
我已经创建了一个有空格的列表,还有一个带方框的列表C# 如何创建随对象自动更新的列表,c#,C#,我已经创建了一个有空格的列表,还有一个带方框的列表 列表中的每个框都检查它是否适合任何空格 若它合适,那个么盒子必须放在那个空间里 2.1。放置后,其中可能存在一些剩余空间 2.2。这个空间必须分为三个空间 2.3。应将这三个空格添加到空格列表中,并重复此过程,直到列表中的任何空格中都没有方框 在这里,每个空间可以分配0到100个盒子。我的问题是如何将这些剩余的空间再次添加到列表中,并删除已使用的空间 Boolean Boxfits, Boxplaced; foreach (Space spac
Boolean Boxfits, Boxplaced;
foreach (Space space in ListofSpaces)
{
foreach (Box box in ListofBoxes)
{
Boxfits = checkboxfits.Checkboxfits(box,space);
if (Boxfits == true)
{
Boxplaced = placethebox.Placethebox(box, space);
if (Boxplaced == true)
{
ListofSpaces = dividespace.Dividespace(box, space);
}
}
}
}
首先,我们需要为您提供许多未知对象的全面解决方案,例如,什么类型的
空间框和对象复选框匹配放置框分割空间。我不认为这些是.net中的类。如果是,请告诉我们
因此,对于一般解决方案,请考虑递归函数。那会让你的生活更简单
这是一个好的开始
试试这个,但不是很确定它是否有效
public void AddBoxToSpaces(List<Space> ListofSpaces)
{
Boolean Boxfits, Boxplaced;
foreach (Space space in ListofSpaces)
{
foreach (Box box in ListofBoxes)
{
Boxfits = checkboxfits.Checkboxfits(box, space);
if (Boxfits == true)
{
Boxplaced = placethebox.Placethebox(box, space);
if (Boxplaced == true)
{
//ListofSpaces = dividespace.Dividespace(box, space);
AddBoxToSpaces(dividespace.Dividespace(box, space));
}
}
}
}
}
public void AddBoxToSpaces(列表空间)
{
布尔箱型拟合,箱型放置;
foreach(列表空间中的空间)
{
foreach(框列表中的框)
{
方格拟合=方格拟合。方格拟合(方格,空格);
if(Boxfits==true)
{
放置的盒子=放置盒子。放置盒子(盒子,空间);
if(Boxplaced==true)
{
//listofspace=dividespace.dividespace(框,空格);
AddBoxToSpace(dividespace.dividespace(box,space));
}
}
}
}
}
希望这有帮助谢谢你的帮助。在这里,分隔的空间应取代使用的空间。