|
Программирование >> Дополнительные возможности наследования
VDcBOu самостоятельно Неделя 2 Основные вопросы Мы завершили первую неделю обучения и научились основным принципам и средствам профаммирования на С++. Для вас теперь не должно составлять труда написание и компиляция небольшой профаммы. Также вы должны четко представлять, что такое классы и объекты, составляющие основу объект-ориентированного профаммирования. Что дальше Вторую неделю начнем с изучения указателей. Указатели традиционно являются сложной темой для освоения начинающими профаммистами на С++. Но в этой книге вы найдете подробные и наглядные разъяснения того, что такое указатель и как он работает, поэтому, мы надеемся, что через день вы уже свободно будете владеть этим средством профаммирования. На занятии 9 вы познакомитесь со ссылками, которые являются близкими родственниками указателей. На занятии 10 вы узнаете как замещать функции, а занятие 11 будет посвящено наследованию и разъяснению фундаментальных принципов объект-ориентированного профаммирования. На занятии 12 вы узнаете как создавать структуры данных от простых массивов до связанных списков. Занятие 13 расширит ваши представления об объект-ориентированном профаммировании и познакомит с полиморфизмом, а занятие 14 завершит вторую неделю обучения рассмотрением статических функций и функций друзей класса. Указатели Возможность непосредственного доступа к памяти с помощью указателей - одно их наиболее мощных средств программирования на С++. Сегодня вы узнаете: Что такое указатели Как объявляются и используются указатели Как работать с памятью При работе с указателями программисты подчас сталкиваются с довольно специфическими проблемами, поскольку в некоторых ситуациях механизм работы указателей может оказаться весьма запутанным. Кроме того, в ряде случаев нельзя однозначно ответить на вопрос о необходимости применения указателей. На этом занятии последовательно, щаг за шагом, вы освоите основные принципы работы с указателями. Однако осознать всю мощь этих средств вы сможете, только прочитав книгу до конца. Что такое указатель Указатель - это переменная, в которой записан адрес ячейки памяти компьютера. Чтобы понять, как работают указатели, необходимо хотя бы в общих чертах, ознакомиться с базовыми принципами организации машинной памяти. Машинная память состоит из последовательности пронумерованных ячеек. Значение каждой переменной хранится в отдельной ячейке памяти, которая называется ее адресом. На рис. 8.1 изображена структура размешения в памяти четырехбайтового целого значения переменной theAge. Для разных компьютеров характерны различные правила адресации памяти, имеющие свои особенности. Однако в большинстве случаев программисту не обязательно знать точный адрес какой-либо переменной - эту задачу выполняет компьютер. При необходимости такую информацию можно получить с помощью оператора адреса (&). Пример использования этого оператора приведен в листинге 8.1. Память theAge
100 101 102 103 104 105 106 107 108 109 110 111 112 113 каждая ячейка = 1 байт unsigned long int theAge = 4 байт = 32 бита имя переменной theAge указывает на первый байт адрес переменной theAge = 10 Рис. 8.1. Сохранение в памяти переменной theAge Аистииг 8.1. Оператор адреса Листинг 8.1. Пример использования оператора адреса #include <iostream.h> int mainO { unsigned short shortVar=5; unsigned long longVar=65535; long sVar = -65535; cout shortVariX t shortVar; cout Address of shortVar:\ t ; cout &shortVar \ n ; cout longVar;\ t << longVar; cout Address of longVar:\ f cout &longVar X n ; cout sVar:\ t sVar; cout << Address of sVar:\ f cout &sVar Л n ; return 0; ShortVar: 5 Address of shortVar: 0x8fc9:fff4 longVar: 65535 Address of longVar: Ox8fc9:fff2 sVar: -65535 Address of sVar: 0x8fc9:ffee (Ваши результаты могут отличаться от приведенных в листинге.)
|
© 2006 - 2025 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |