Реферат Курсовая Конспект
Лекция 1. Объектно-ориентированное программирование – это новый подход к программированию. Объектно- ориентированные языки обладают свойством - раздел Философия, Лекция 1. ...
|
Лекция 1.
ВВЕДЕНИЕ
Приступая к изучению более сложных конструкций языка С++, следует прежде всего повторить тот материал, который был изложен в первой части настоящего пособия, так как невозможно правильно написать объектно- ориентированную программу на С++, путаясь в использовании основных конструкций языка, изложенных ранее. Без предварительного изучения базовых конструкций, таких как: стандартные типы данных, операторы условия и цикла, работа с файлами и массивами, изучение данного материала окажется либо мало эффективным, либо бесполезным.
Объектно-ориентированное программирование – это новый подход к программированию. Объектно- ориентированные языки обладают свойством
объединять данные (разных типов ) и правила их обработки (функции) в единую совокупность, которую затем можно использовать как объект, обладающий определенными, заранее предписанными ему свойствами.
Объектно- ориентированные языки программирования обладают четырьмя общими характеристиками, такими как: инкапсуляция(encapsulation), полиморфизм (polymorphism), наследование (inheritance) и абстракция типов (abstraction)
Инкапсуляция- объединение некоторой группы данных и некоторой группы функций, наследование – передача одним объектам атрибутов и свойств других объектов, полиморфизм – использование одного и того же символа или имени для различных целей.
ОБЪЕКТЫ И КЛАССЫ.
1.1. Основные понятия.
Можно рассматривать объект как переменную нового, определяемого пользователем, типа. Объект всегда принадлежит некоторому классу. Классы – это структуры, которые содержат описания не только данных, но и функций. Для того, чтобы использовать класс, его нужно вначале объявить, точно так же как это делается со структурами. Так же как и для структур для класса сохраняется принцип его полного объявления в программе только один раз до первого использования. После того как класс объявлен, его имя может быть использовано в качестве типа данных при объявлении представителей данного класса.
Простейшим образом класс можно объявить так:
class имя_класса {список компонентов};
где имя_класса – произвольно выбранный идентификатор, список компонентов – определение типов данных и функций класса.
Заключенный в фигурные скобки список компонентов называют телом класса. Телу класса предшествует заголовок. Определение класса всегда заканчивается точкой с запятой.
Итак класс- это тип введенный программистом, а каждый тип служит для описания объектов. (object)
Объект – это логическая единица, которая содержит данные и правила обработки этих данных. В объекте может быть реализована защита данных, если данные объявляются приватными или защищенными, то к ним нет доступа извне.
Данные и функции могут быть частными (private) защищенными (protected) и общими (public).
Для описания объекта используется конструкция:
Имя_класса имя_объекта;
Пример:
class comp
{
double imag;// мнимая часть комплексного числа
double real; // вещественная часть комплексного числа
void define(double re=0.0,double im=0.0)
{
real=re; imag=im;
}
void display(void)
{
cout<<real<<”+i*”<<imag;
}
};
В отличие от структурного типа в класс могут быть включены функции
(в этом примере define() и display()) Этим новым типом описываются данные
comp x1,x2;// объекты класса comp
comp dim[8];// массив объектов класса comp
Когда объект определен можно обращаться к его компонентам.
Операция точка.
Общий вид операции:
Имя объекта . обращение к компонентной функции;
Вызывает действие функции для обработки данных именно указанного объекта.
Пример:
x1.define();// real=0.0 imag=0.0
x2.define(4.3,20.0) // real=4.3 imag=20.0
Тогда вызов: x2.display();
приведет к печати 4.3+i*20.0
Обращение к компонентам.
имя_объекта.имя_класса::имя_компонента
x1.complex1::real=1.24;
или сокращенно
ИСПОЛЬЗОВАНИЕ ПРЕПРОЦЕССОРА.
Лекция 4.
ОПЕРАЦИИ С БИТАМИ
Поразрядные операции.
Побитовые операции можно проводить с любыми целочисленными переменными и константами. Нельзя использовать эти операции с переменными типа float и double Результатом побитовой операции будет так же целое число. К таким операциям относятся &(“И”), | (“ИЛИ”), ^(“исключающее ИЛИ”), ~ (“НЕ”) << сдвиг влево >> сдвиг вправо. Поразрядные операции позволяют обеспечивать доступ к каждому биту информации.
E1&E2 (операция “И”) E1| E2 (операция “ИЛИ”) E1^E2 (операция исключающее “ИЛИ”)
Результат каждой из трех операций имеет тип операндов, каждый его бит определяется битами операндов, стоящих на тех же местах
Е1 | Е2 | & | | | ^ |
Операция отрицания ~E
бит Е Бит результата
0 1
1 0
Если надо установить значение старшего разряда переменной типа char равным нулю, то удобно применить операцию &(END) с константой 127
Пример:
ch=сh&127;
пусть ch=’Б’; // Б 10000001
// 127 01111111
тогда получим 00000001
Поразрядные операции удобны для хранения в сжатом виде информации о состояниях ON/OFF(вкл. выкл.) В одном байте можно хранить 8 таких флагов. Часто поразрядные операции находят применение в драйверах устройств.
Пример:
Пусть ch- переменная флагов проверить находится ли флаг в состоянии ОN(вкл) в третьем бите.
if(ch&4) cout<<”3 бит содержит 1 состояние ON”;
// операция if проверяет на неравенство нулю
// 4=00000100
Операция сдвига.
Сдвиг беззнаковых типов вправо ® приписывается один ноль слева сдвиг беззнаковых типов влево ¬ приписывается один ноль справа
Пример:
пусть
unsigned char x=255;//x=11111111
x=x<<3;
//тогда 11111000 x=248
unsigned char x=255;
x=x>>3;
//тогда 00011111 x=31
unsigned x=9;
х<<3;
// x=9 Þ x=00001001
//x=01001000 x=72
ФУНКЦИЯ main().
Любая программа на Си и С++ должна содержать функцию main()
Располагать ее в программе можно по своему усмотрению. Некоторые программисты располагают ее в начале файла, другие - в самом конце. Но, независимо от расположения функции main, перечисленные ниже правила для нее всегда соблюдаются.
Значение возвращаемое функцией main().
Значение, возвращаемое функцией main, является кодом завершения программы и имеет тип int. Если, однако, ваша программа для завершения использует функцию exit (или _exit), то значением, возвращаемым функцией main, будет аргумент, предаваемый функции exit (или _exit).
Например, если программа содержит вызов:
exit(1)
то ее код завершения равен 1.
Задание для самоконтроля:
Написать программу и создать ее в файле под именем prim.exe
используя аргументы функции main составить программу так, чтобы в результате выполнения следующей команды в командной строке
>prim вы справились
на экран вывелось сообщение :
хорошо! вы справились с заданием.
ТИПЫ И КЛАССЫ ПАМЯТИ.
РАБОТА В ГРАФИЧЕСКОМ РЕЖИМЕ.
Лекция 11.
СПИСОК ЛИТЕРАТУРЫ
1. Подбельский В.В. Язык Си++. –М.: Финансы и статистика, 2001. – 560с.
2. Березин Б.И., Березин С.Б.
Начальный курс С и С++.-М.:Диалог Мифи, 2001. – 288с.
3. Кнут Д.Э. Искусство программирования: В 3 т.
Пер с англ. –М.:Вильямс, 2000.
4. Джамса К. Учимся программировать на языке С++.-М.: МИР, 2001.
5. Крейг Арнуш Borland C++ 5: Освой самостоятельно
Пер. с англ. – М.:Восточная Книжная Компания, 1997. – 720с.
6. Крупник А.В. Вопросы и ответы по С и СИ++. –М.:МикроАрт, 1997.-240с.
Учебное издание.
Александрова Татьяна Львовна
Александров Владимир Викторович
Алгоритмические языки и программирование
Учебное пособие.
Подписано в печать 7.03.2002 г.
Формат 6084 1/16.
Объем 4 п.л. Тираж 300 экз. Заказ 32.
Отпечатано в типографии Московской государственной академии
приборостроения и информатики.
107846, Москва, ул.Стромынка,20.
– Конец работы –
Используемые теги: Лекция, Объектно-ориентированное, Программирование, это, Новый, ход, программированию, Объектно, Ориентированные, Языки, обладают, свойством0.144
Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Лекция 1. Объектно-ориентированное программирование – это новый подход к программированию. Объектно- ориентированные языки обладают свойством
Если этот материал оказался полезным для Вас, Вы можете сохранить его на свою страничку в социальных сетях:
Твитнуть |
Новости и инфо для студентов