Правила программирования на С и С++. Главы 1-6 Страница 74. Избегайте явно временных переменных
|
Страница 74 из 93 67. Избегайте явно временных переменных.
Большинство переменных, используемых лишь один раз, попадают в эту категорию. Например, вместо: int x = *p++; f( x ); должно быть: f( *p++ );Редко бывает, что полезна явная временная переменная, если вам нужно гарантировать порядок вычислений, или если выражение просто такое длинное, что его невозможно прочитать. В последнем случае имя переменной даст полезную информацию и, будучи выбрано правильно, может устранить необходимость в комментарии. Например, вы можете заменить: f( Coefficient_of_lift * (0.5 * RHO * square(v)) ); // передать функции f() образующуюся // подъемную силу f( Коэффициент_подъемной_силы * (0.5 * RHO * квадрат(v)) ); // передать функции f() // образующуюся подъемную // силу на: double lift = Coefficient_of_lift * (0.5 * RHO * square(v)); f( lift ); double подъемная_сила = Коэффициент_подъемной_силы * (0.5 * RHO * квадрат(v)); f( подъемная_сила ); Это правило не запрещает ни одно из подобных применений, а является, скорее, вырожденным случаем того, что упомянуто мной вначале. |