Форум программистов, компьютерный форум, киберфорум
Наши страницы

Как описать абстрактный тип данных? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Среди работников данного предприятия найти... http://www.cyberforum.ru/cpp-beginners/thread400674.html
Помогите пожалуйста.....Или скинте ссылку с похожей задачей.Не знаю с чего начать... Среди работников данного предприятия найти тех, чья заработная плата за месяц ниже средней по предприятию, а также...
C++ Добавление в список нового элемента Всем доброе время суток. Мне нужна помощь, есть задание: нужно добавить в список новый элемент, после элемента, совпадающего с ключем x, если такого нет, то добавить новый элемент в начало списка.... http://www.cyberforum.ru/cpp-beginners/thread400663.html
C++ обработка массивов
столкнулся с данной задачей... подскажите пожалуйста что делаю не так... вот задача Найти в массиве четыре смежных числа с чередующимися знаками «+»«-» или «-» «+». вот код программы int main()...
Двумерные массивы, строки. C++
ребят, покажите пожалуйста решение хоть одной из задач...а то с травмой своее пропустил 4 недели надо теперь нагонять...помогите хоть с одной из задач
C++ Наследование с использованием конструктора. http://www.cyberforum.ru/cpp-beginners/thread400637.html
Здравствуйте, помогите справиться с задачей: Задача: создать класс студент. Создать классы: бюджетный студент и коммерческий студент. Условие: в классе студента есть поля Имя и Курс. При выборе...
C++ Вычислить дисперсию значений массива X, состоящего из 100 элементов и вывести на экран. Соственно прошу вас написать код программы, которая это вычисляет. Добавлено через 12 часов 39 минут Можно и с 10 элементами хотя бы. подробнее

Показать сообщение отдельно
DU
1484 / 1130 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
07.12.2011, 00:18
похоже вы не видите связи между тем определением, которое привели и тем классом, который я тут привел.

Поясняю
Абстра́ктный тип да́нных (АТД) — это тип данных
Queue - тип данных

, который предоставляет для работы с элементами этого типа определённый набор функций
C++
1
2
3
4
void Queue::push(int)
int Queue::pop()
unsigned Queue::size() const
bool Queue::empty() const
Все эти методы и есть тот самый набор ф-ий, который позволяет что-то делать с очередью

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

list<int> m_list - это деталь имплементации этой очереди. Она скрыта от пользователей очереди. Если вам не нравится std::list<int> , можете использовать любой другой std-ый контейнер или написать свой или еще как вам угодно это сделать. Пользователей класса Queue детали реализации вообще не должны волновать. Они работают с публичным набором функций (интерфейсом) класса Queue. Про инкапсюляцию слышали? Вот это и есть ее проявление: в классе Queue детали реализации скрыты за публичным интерфейсом.
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.