假设在运行时我建立了一些具有发生时间的事件。现在我在系统中有某些实体,我需要确定哪些实体受到这些事件的影响。
举个例子说我有:
- Entity1在时间 1 初始化
- EventRed发生在时间 3
- Entity2在时间 8 初始化
- EventBlue发生在时间 9
- EventYellow发生在时间 11
- Entity3在时间 13 初始化
这应该导致:
- Entity1为白色
- Entity2为绿色
- Entity3为黑色
我想要一个类似case
的控制结构来做到这一点,它支持失败并且谁的案例被评估为“大于或等于这个值”。我想要这样的语法:
for(auto& i : Entity) {
?switch(i.GetInitializedTime()) {
?case(Red.GetOccuranceTime()):
i.AddRed();
?case(Blue.GetOccranceTime()):
i.AddBlue();
?case(Yellow.GetOccuranceTime()):
i.AddYellow();
}
}
是否有这样的控制结构,还是我必须处理所有的 if 语句?