
- •1. Цель и задачи работы
- •2. Теоретические сведения
- •3. Оборудование
- •4. Задание на работу
- •5. Порядок выполнения работы
- •6. Оформление отчета
- •7. Контрольные вопросы
- •1. Цель и задачи работы
- •2. Теоретические сведения
- •3. Оборудование
- •4. Задание на работу
- •5. Порядок выполнения работы
- •6. Оформление отчета
- •7. Контрольные вопросы
- •1. Цель и задачи работы
- •2. Теоретические сведения
- •3. Оборудование
- •4. Задание на работу
- •5. Порядок выполнения работы
- •6. Оформление отчета
- •7. Контрольные вопросы
- •1. Цель и задачи работы
- •2. Теоретические сведения
- •3. Оборудование
- •4. Задание на работу
- •5. Порядок выполнения работы
- •6. Оформление отчета
- •7. Контрольные вопросы
- •1. Цель и задачи работы
- •2. Теоретические сведения
- •3. Оборудование
- •4. Задание на работу
- •5. Порядок выполнения работы
- •6. Оформление отчета
- •7. Контрольные вопросы
- •1. Цель и задачи работы
- •2. Теоретические сведения
- •3. Оборудование
- •4. Задание на работу
- •5. Порядок выполнения работы
- •6. Оформление отчета
- •7. Контрольные вопросы
- •1. Цель и задачи работы
- •2. Теоретические сведения
- •3. Оборудование
- •4. Задание на работу
- •5. Порядок выполнения работы
- •6. Оформление отчета
- •7. Контрольные вопросы
- •1. Цель и задачи работы
- •2. Теоретические сведения
- •3. Оборудование
- •4. Задание на работу
- •5. Порядок выполнения работы
- •6. Оформление отчета
- •7. Контрольные вопросы
5. Порядок выполнения работы
5.1. Проверить наличие на компьютере необходимого аппаратного оборудования и программного обеспечения, наличие 200 Мб свободной памяти на логическом диске, содержащем каталог Tprog\Lab3, наличие файла Labtprog3.doc и исходных файлов Refer.cpp, Vect.h, Vect.cpp, Vectprog.cpp, Circle.h, Circle.cpp, Circleprog.cpp в каталоге Tprog\Lab3.
5.2. Создать личный каталог, в котором будут размещаться создаваемые во время лабораторной работы проекты.
5.3. Создать в личном каталоге пустой проект неуправляемого консольного приложения, выбирая в IDE-среде в меню File следующую последовательность опций: New->Project-> Other Language ->Visual C++ -> Win32 -> Win32 Console Application -> Empty Project, а затем добавить в него файл Refer.cpp, предварительно выполнив копирование в каталог проекта исходных файлов приложения. По команде Ctrl+F5 откомпилировать проект и выполнить приложение. Проверить правильность работы приложения.
5.4. Повторить выполнение пункта 5.3 для приложений Vect и Circle. Для смены файлов в проекте необходимо в окне Solution Explorer удалить файлы проекта из разделов Header Files и Source Files (выбирая в контекстном меню Exclude From Project), а затем добавить в эти разделы файлы нового приложения (выбирая в контекстном меню Add -> Existing Item).
5.5. Разработать и отладить объектно-ориентированную программу на неуправляемом (unmanaged) языке С++ в интегрированной среде разработки приложений MS Visual Studio .NET 2005 в соответствии с заданием преподавателя. Если при отладке возникают проблемы с устранением ошибок в программе, необходимо выделить ошибку в окне Error List и нажать клавишу F1. В появившемся окне документации MSDN будет приведены примеры исправления ошибки.
6. Оформление отчета
Отчет должен содержать:
цель работы и индивидуальное задание;
тексты исходных файлов, содержащие описание и реализацию классов, используемых в лабораторной работе;
файлы *.h и *.cpp, содержащие описание и реализацию классов в соответствии с заданием преподавателя;
текст тестовой программы и результаты работы программы;
краткая информация о перегрузке операций в абстрактном типе.
7. Контрольные вопросы
7.1. Чем обусловлено введение дружественных функций в языке С++?
7.2. Чем отличается реализация дружественной функции от функции-элемента класса?
7.3. Можно ли для абстрактного типа данных использовать символ операции, не используемый для обозначения стандартных операций языка С++?
7.4. Что дает использование ссылок при реализации функций?
7.5. Что означают слова lvalue и rvalue, появляющиеся иногда в сообщениях компилятора об ошибках?
7.6. Чем отличается инициализация от присваивания?
7.7. Какие операторные функции не могут быть дружественными функциями?
7.8. Как компилятор различает случаи использования стандартного и перегруженного операторов []?
7.9. Всегда ли выполняется определение обоих методов (get и put) при объявлении свойства ?
7.10. Будет ли ошибка, если при создании нового типа данных не будет перегружен оператор присваивания ?
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Подбельский, В.В. Язык Си+ : учеб.пособие для вузов / В.В.Подбельский .— 5-е изд. — М. : Финансы и статистика, 2007 (2001, 2002, 2003, 2004, 2005, 2006).— 560с. : ил.
2. Павловская, Т.А. C/C++:Программирование на языке высокого уровня : учебник для вузов / Т.А.Павловская .— М.[и др.] : Питер, 2007 (2002, 2003, 2004, 2005, 2006) .— 461с. : ил.3. Гарнаев А.Ю. Самоучитель Visual Studio .Net 2003. – СПб.: БХВ-Петербург, 2003. – 688 с.
3. Шилдт, Г. C+ : базовый курс / Г.Шилдт;пер.с англ.и ред.Н.М.Ручко .— 3-е изд. — М.[и др.] : Вильямс, 2007 (2005) .— 624с. : ил.5. Уоткинз Д., Хаммонд М., Эйбрамз Б. Программирование на платформе .NET. – М.: Издательский дом "Вильямс", 2003. – 368 с.
4. MSDN 2010. Электронная документация Microsoft для разработчиков программного обеспечения. – 500000 с.
ЛАБОРАТОРНАЯ РАБОТА N 4
Создание контейнерных объектов в программах на языке С++