- •Федеральное агентство по образованию Государственное образовательное учреждение высшего профессионально образования Уфимский государственный авиационный технический университет
- •Л Уфа 2008 абораторный практикум по дисциплине «Программирование на языке высокого уровня»
- •Введение
- •Лабораторная работа № 9 динамические массивы структур
- •Лабораторная работа № 10 классы. Класс массивы структур
- •Лабораторная работа № 11 классы. Класс динамического массива структур.
- •Лабораторная работа № 12 списки. Класс списка структур
- •Список литературы
Федеральное агентство по образованию Государственное образовательное учреждение высшего профессионально образования Уфимский государственный авиационный технический университет
ДИНАМИЧЕСКИЕ МАССИВЫ И КЛАССЫ В C++
Л Уфа 2008 абораторный практикум по дисциплине «Программирование на языке высокого уровня»
Составители: А.Ю. Хасанов, О.Я. Бежаева, Д.В. Семененко
УДК 004.43(07)
ББК 32.973-018.1(я7)
Динамические массивы и классы в C++: Лабораторный практикум по диадаилине «Программирование на языке высокого уровня». Часть 3. / Уфимск. гос. авиац. техн. ун-т; Сост.: А.Ю. Хасанов, О.Я. Бежаева, Д.В. Семененко. - Уфа, 2008. - 47 с.
Проанализированы особенности использования динамических массивов структур, классов и списков в C++. Особое внимание уделено описанию операторов на языке C++ и обработке структур данных. Теоретический и методический материал сопровождаются примерами практических заданий.
Предназначены для студентов первого курса, обучающихся по направлению 230100 - Информатика и вычислительная техника, специальностей 230101 - Вычислительные машины, комплексы, системы и сети, 230102 - автоматизированные системы обработки информации и управления, 230104 - системы автоматизированного проектирования.
Библиогр.: 6 назв.
Рецензенты: канд. техн. наук, доцент Мукасеева В.Н., д-р. техн. наук, проф. Мунасыпов Р.А.
©Уфимский государственный авиационный технический университет, 2008
Содержание
ДИНАМИЧЕСКИЕ МАССИВЫ И КЛАССЫ В C++ 1
Лабораторный практикум по дисциплине «Программирование на языке высокого уровня» 1
}; 7
}; 7
}; 11
}; 11
}; 11
}; 12
}; 12
}; 15
}; 15
}; 15
Введение
Язык С с самого начала создавался так, чтобы на нем решались задачи системного программирования. Это в первую очередь средства непосредственной работы с памятью, структурные конструкции управления и модульная организация программы. Есть, впрочем, еще один фактор, определивший успех языка, в нем разделили машинно-зависимые и независимые свойства. Благодаря этому большинство программ удается писать универсально - их работоспособность не зависит от архитектуры процессора и памяти.
В начале 80-х годов в компании AT&T Bell Labs стали разрабатывать расширение языка С под условным названием «С с классами». Первый коммерческий транслятор нового языка, получившего название C++ появился в 1983 году. Он представлял собой препроцессор, транслировавший программу в код на С. Всемирная популярность C++ началась с 1985 года.
Массивы, с которыми мы работали до сих пор, определялись перед компиляцией, до выполнения программы. Для таких массивов оперативная память выделяется перед выполнением программы и сохраняется до окончания. Это статическое выделение памяти.
Часто заранее невозможно определить, сколько места в оперативной памяти понадобится для массива. В таких случаях необходимо использовать динамические массивы. Определение динамического массива происходит во время выполнения программы, память выделяется непосредственно перед его использованием и освобождается, когда массив уже не нужен. Лабораторная работа № 9 посвящена использованию динамических массивов.
Главное нововведение C++ - механизм классов, дающий возможность определять и использовать новые типы данных. С точки зрения синтаксиса класс в C++ - это структурированный тип, образованный на основе уже существующих типов. Программист описывает внутреннее строение (данные) класса и набор функций- методов для доступа к этим данным. Таким образом, создаваемые пользователем типы данных могут обеспечить представление понятий предметной области решаемой задачи. Лабораторные работы № 10, 11, 12 посвящены разработке и реализации различных видов классов.
Линейный список - такая структура данных, элементами которой служат записи с одним и тем же форматом, связанные друг с другом с помощью указателей, хранящихся в самих элементах списка.
Основные операции со списками - это вставка элемента в список, удаление элемента из списка, просмотр списка в поисках какого-либо элемента. Размер списка не фиксирован и может увеличиваться или уменьшаться в процессе работы программы. В лабораторной работе № 12 показано, как создавать связанные списки и работать с ними.