|
|
|
Проверка коллекции временных интервалов
|
|||
|---|---|---|---|
|
#18+
Имеется коллекция временных интервалов (каждый интервал имеет время начала и продолжительность). В коллекцию могут добавляться новые интервалы, и изменяться существующие, но требуется не допустить их пересечения. Временной интервал - это самостоятельный класс, поэтому он имеет событие IntervalAboutToChange, которое наступает перед тем как интервал реально измениться, и поймав которое можно проверить допустимость грядущего изменения, и в случае проблем выбросить исключение. Проблема в том, что у меня получаются два довольно похожих метода проверки, и ни как не могу сообразить, как их объединить в один. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. Метод CheckChangedTimeInterval() вызывается перед тем, как произойдет изменение интервала, и поэтому имеет два аргумента - измененный интервал и первоначальный интервал. Метод CheckNewTimeInterval() вызывается перед вставкой (т.е. в коллекции новый интервал еще отсутствует). Функция IntervalOK() проверяет не пересекается-ли интервал с другим. Можно как-нибудь их объединить в нечто одно ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.03.2008, 19:11 |
|
||
|
Проверка коллекции временных интервалов
|
|||
|---|---|---|---|
|
#18+
можно на коллекции сделать етод except, порождаюший ее без заданного интервала. И метод contains. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.03.2008, 22:59 |
|
||
|
|

start [/forum/topic.php?fid=16&fpage=147&tid=1345435]: |
0ms |
get settings: |
6ms |
get forum list: |
16ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
46ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
34ms |
get tp. blocked users: |
1ms |
| others: | 239ms |
| total: | 356ms |

| 0 / 0 |
