1.    Объявите все переменныечлены

Название книги: 
ПРОГРАММИРОВАНИЕ на С++
Автор: 
УОЛТЕР САВИЧ

1.    Объявите все переменные-члены класса как
закрытые.

2.   
Каждую из основных
операций абстрактного типа (класса) определите как открытую функцию-член
класса, дружественную функцию, обычную функцию или перегруженный оператор.
Объедините определение класса, объявления функций и операторов в одну группу,
которая вместе с пояснительными комментариями называется
интерфейсом абстрактного типа. Комментарии в определении класса и
объявлениях функций и операторов должны содержать описания того, как
используется каждая функция и оператор.

3.   
Сделайте реализацию
основных операций над абстрактным типом данных недоступной использующему ее
программисту. Реализация состоит из определений функций и перегруженных
операторов, а также определений вспомогательных функций и других дополнительных
элементов.

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

Страница: 
450

УОЛТЕР САВИЧ: ПРОГРАММИРОВАНИЕ на С++. Часть 3.