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

       

Используйте аккуратные столбцы везде, где можно


Так как форматирование по сути является видом комментирования, то это правило применяйте также и к тексту программы. Два следующих блока функционально одинаковы, но заметьте, насколько легче искать имена переменных во втором блоке, причем не из-за выравнивания комментариев, а потому что имена образовали аккуратный столбец:

int x; // Опишите, что делает x.

unsigned long int (*pfi)(); // Опишите, что делает pfi.

const char *the_variable; // Опишите, что делает the_variable.

int z; // Опишите, что делает z.

x = 10; // Здесь идет комментарий.

the_variable = x; // Здесь второй комментарий.

z = x; // A здесь третий.

по сравнению с:

int                x;             // Опишите, что делает x.

unsigned long int ( *pfi )();     // Опишите, что делает pfi.

int                z;             // Опишите, что делает z.

const char         *the_variable; // Опишите, что делает



                                  //   the_variable.

x            = 10;        // Здесь идет комментарий.

the_variable = x;         // Здесь второй комментарий.

z            = x;         // A здесь третий.

Вы можете рассматривать на этот вид форматирования как по сути "табличный", как если бы я создал таблицу со столбцами "тип", "имя" и "описание".

Другим хорошим местом для использования столбцов является список инициализации элементов в Си++, который я форматирую следующим образом:

class derived : public base

{

   string        str;

   const int     x;

public:

   derived( char

*init_str, int init_x ) {}

}

derived::derived(

char *init_str, int init_x )

                                   :base( str, x   )

                                   ,str ( init_str )

                                   ,x   ( init_x   )

{}




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