Я пишу код для анализа данных и должен исключать образцы на основе некоторых критериев. На практике я получаю код, например:
bool Test(SampleType sample)
{
if( ! SubTest1(sample) )
return false;
if( ! SubTest2(sample) )
return false;
if( ! SubTest3(sample) )
return false;
return true;
}
Мне кажется эквивалентным следующее:
bool Test(SampleType sample)
{
if( ! SubTest1(sample) )
return false;
else if( ! SubTest2(sample) )
return false;
else if( ! SubTest3(sample) )
return false;
else
return true;
}
Есть ли разница в стоимости вычислений? Существует ли спорный преференциальный вариант с точки зрения расширяемости/ремонтопригодности, эстетики и т.д.??
Я знаю, что это, вероятно, несущественная проблема, но как только я получаю эти вопросы, застрявшие у меня в голове, мне нужно найти ответ.
PS: в случае, если кто-то заботится, мой фактический код от 15/09 можно найти на следующем: http://folk.uio.no/henrikq/conf.tgz