Правила программирования на Си и Си++

Избегайте явно временных переменных


Большинство переменных, используемых лишь один раз, попадают в эту категорию. Например, вместо:

int x = *p++;

f( x );

должно быть:

f( *p++ );

Редко бывает, что полезна явная временная переменная, если вам нужно гарантировать порядок вычислений, или если выражение просто такое длинное, что его невозможно прочитать. В последнем случае имя переменной даст полезную информацию и, будучи выбрано правильно, может устранить необходимость в комментарии. Например, вы можете заменить:

f( Coefficient_of_lift * (0.5 * RHO * square(v)) );

// передать функции f() образующуюся подъемную силу

на:

double lift = Coefficient_of_lift * (0.5 * RHO * square(v));

f( lift );

Это правило не запрещает ни одно из подобных применений, а является, скорее, вырожденным случаем того, что упомянуто мной вначале.



Содержание раздела