Информационный сайт

 

Реклама
bulletinsite.net -> Книги на сайте -> Программисту -> Степанов Е.О. -> "Стиль программирования на С++ " -> 8

Стиль программирования на С++ - Степанов Е.О.

Степанов Е.О., Чириков С.В. Стиль программирования на С++ — Спб.: ГИТМО, 2001. — 48 c.
Скачать (прямая ссылка): stilprogrammivaniya2001.pdf
Предыдущая << 1 .. 2 3 4 5 6 7 < 8 > 9 10 11 12 13 .. 14 >> Следующая


/*===============================[ CLASS LIFECYCLE

]============*/

/*-------------------------------[ C LAS S _NAME 1 ]----------------

*/

/*-------------------------------[ C LAS S _NAME 2 ]----------------

*/

/*===============================[ CLASS OPERATORS

]============*/

/*-------------------------------[ C LAS S _NAME 1 ]----------------

*/

/*-------------------------------[ C LAS S _NAME 2 ]----------------

*/

/*===============================[ PUBLIC CLASS METHODS

]=======*/

/*-------------------------------[ C LAS S _NAME 1 ]----------------

*/

/*-------------------------------[ C LAS S _NAME 2 ]----------------

*/

/*===============================[ PROTECTED CLASS METHODS

]====*/

25 /*-------------------------------[ C LAS S _NAME 1 ]----------------

*/

/*-------------------------------[ C LAS S _NAME 2 ]----------------

*/

/*===============================[ PRIVATE CLASS METHODS

]======*/

/*-------------------------------[ C LAS S _NAME 1 ]----------------

*/

/*-------------------------------[ C LAS S _NAME 2 ]----------------

*/

/*===============================[ PUBLIC FUNCTIONS

]==========*/

/*===============================[ PRIVATE FUNCTIONS

]==========*/

/** (END OF FILE : filename.ext)

Приведем ниже описание каждого раздела.

Section Description
SPECIAL В этом разделе должны находиться блоки условной компиляции (#ifndef ... и т.п.).
IMPORT DECLARATIONS Все системные, библиотечные и заголовочные файлы (h-файлы) должны находиться в данном разделе.
PUBLIC DECLARATIONS Эта строка должна предшествовать объявлением public методов и данных класса.
PRIVATE DECLARATIONS Эта строка должна предшествовать объявлением private методов и данных класса.
..PRIVATE CONSTANTS Все частные #defines и constants должны быть объявлены в данном разделе.
..PRIVATE TYPES Все частные типы, которые используются в данном исходном файле, должны быть объявлены в данном разделе.
..PRIVATE VARIABLES В этом разделе объявляются все частные переменные.
..PRIVATE FUNCTIONS Все частные функции, используемые в данном исходном файле, должны быть объявлены в этом разделе.

26 Section Description
..PRIVATE PSEUDO FUNCTIONS Все макросы должны быть объявлены в этом разделе.
PUBLIC VARIABLES Все глобальные переменные должны быть заданы в этом разделе.
PRIVATE VARIABLES Этот раздел должен содержать все частные переменные данного исходного файла.
CLASS LIFECYCLE Раздел жизненного цикла предназначен для размещения объектов, которые управляют жизненным циклом объекта. Обычно это конструкторы, деструкторы и методы, изменяющие состояние объекта.
CLASS_NAME Если исходный файл содержит реализацию нескольких классов, то их методы должны быть разделены данной секцией с именем класса в квадратных скобках.
CLASS OPERATORS Все оператора класса должны находится в этом разделе.
PUBLIC CLASS METHODS Все public методы класса должны находится в этом разделе.
PROTECTED CLASS METHODS Все protected методы класса должны находится в этом разделе.
PRIVATE CLASS METHODS Все private методы класса должны находится в этом разделе.
PUBLIC FUNCTIONS Раздел для реализации public функций.
PRIVATE FUNCTIONS Раздел для реализации private функций.

• Если некоторый раздел не содержит информации, его можно опустить, но порядок разделов менять не разрешается.

• Наличие комментария, обозначающего начало нового раздела и содержащего имя этого раздела, не обязательно, но весьма желательно. Дело в том, что имеется целый ряд утилит для автоматической генерации документации по откомментированному в соответствии с формальными правилами тексту программы (например, Cweb, описанная в книге Donald. E. Knuth, S. Levy. The Cweb system of structured documentation. Reading: Ad-dison-Wesley, 1994). Такие утилиты очень помогают, в особенности, тем, кто, не являясь разработчиком, должен модифицировать программу.

• В любом случае обязательными являются строки комментария, обозначающими конец и начало файла. Их отсутствие должно сигнализировать о том, что «что-то не в порядке» (например, в результате ошибки записи часть файла оказалась потеряна).

Пример: смотри Приложение 2.

27 4.5. Заголовочные файлы (H-files)

• Каждый класс должен быть задан в своем .h-файле.

• Следующие объекты должны задаваться в своих отдельных .h-файлах:

• базовые классы;

• объекты (классы), которые являются данными других классов;

• классы, которые передаются в качестве формальных параметров, функций или методов класса или возвращаются оператором

return;

• прототипы функций или методы классов, реализованные, как

inline.

• Описания классов, доступных только через указатели (*) или ссылки (&), не должны включаться из .h-файлов. Используйте опережающие ссылки.

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

#ifdef FILENAME_H #define FILENAME_H
Предыдущая << 1 .. 2 3 4 5 6 7 < 8 > 9 10 11 12 13 .. 14 >> Следующая
Реклама
Авторские права © 2009 AdsNet. Все права защищены.
Rambler's Top100