Re[2]: Убить goto
От: night beast СССР  
Дата: 16.02.06 14:44
Оценка:
Здравствуйте, Кодт, Вы писали:

К>Здравствуйте, Шахтер, Вы писали:


К>Красиво, но несколько затратно (делаем лишние проверки).

К>
К>while(a && b)
К>{
К>  switch(Cmp(*a,*b))
К>  {
К>  case CmpLess:    fun(*a); ++a; break;
К>  case CmpEqual:   fun(*a); ++a; ++b; break;
К>  case CmpGreater: fun(*b); ++b; break;
К>  }
К>}
К>while(a) { fun(*a); ++a; }
К>
К>


for ( ; ;) {
   if ( !a ) { while(b) { fun(*b); ++b; } break; }
   if ( !b ) { while(a) { fun(*a); ++a; } break; }

   switch (...)
}

Поправлено форматирование. — Кодт
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.