Студопедия  
Главная страница | Контакты | Случайная страница

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Вступительная лекция.

Читайте также:
  1. Вопрос 1.Лекция.
  2. Вступительная беседа
  3. Вступительная лекция.
  4. Вступительная часть
  5. Вступительная часть сочинения
  6. Культура Нового времени. Лекция.
  7. Лекция.
  8. Лекция.
  9. Лекция.

Строка – это последовательность символов. Если в выражении встречается

одиночный символ, он должен быть заключен в одинарные кавычки. При

использовании в выражениях строка заключается в двойные кавычки.

Признаком конца строки является нулевой символ ‘\0’.

Например, описание строки из 25 символов должно выглядеть так:

char s[26];

Здесь элемент s[25] предназначен для хранения символа конца строки.

char s[7]="Привет";

Можно описать и массив строк

char m[3][25]={"Пример ", "использования", " строк"}

Определен массив из 3 строк по 25 байт в каждой.

получение характеристик строк

s.length, size, max_size, capacity Vпамяти, empty

s.assign(s1, [[с какого,] сколько]) s= часть s1, почти подстрока

s.append(s1, [[с какого,] сколько]) s+=s1

s1=s.substr(с какого, [сколько])

s.insert(№симв, что,[с какого],[сколько]) вставка

s.replace(№симв, вместо скольки, что,[с какого брать],[сколько брать]) замена

s.erase(с какого,[ сколько]) удаление части

s.clear() очистка

s.find(что, [с какого]) возвращает позицию самого правого вхождения

s.rfind(что, [с какого]) -//- левого

s.compare([с какого, сколько из s], c чем,[с какого, сколько из 2го] сравнение -1< 0== 1>

инкапсуляция

- это принцип ООП, объединяющий в одном классе данные и методы, манипулирующие этими данными и защищающие данные класса от внешнего воздействия.

Класс запрещает прямой доступ к своим переменным состояния, поэтому не удастся реализовать недопустимое состояние is_on=0, status=1.
Методы set_print(), stop_print(), on_off(), предоставляющие доступ к свойствам объекта, реализованы так, что также исключают это состояние объекта.

 

В этом и заключается смысл понятия инкапсуляции.

 

полиморфизм

это принцип ООП, позволяющий включать в состав класса несколько функций с одинаковыми именами, но выполняющих различные действия.

Такие функции должны иметь различные списки параметров, они должны отличаться или количеством параметров в списках, или типами соответствующих параметров.

 

наследование

 

это принцип ООП, посредством которого на базе существующих классов создаются новые классы, получающие по наследству от базовых классов свойства и методы.

 

 

ООП определения классы

Логическая единица – объект

Объект в программе представляет собой абстракцию реального объекта, т. е. в программе объект наделяется теми чертами и характеристиками реального времени, которые существенны для решаемой задачи

Объект в программе имеет имя, ограниченный набор свойств, набор допустимых состояний (т. е. набор конкретных значений свойств), набор методов (операций), определяющих модель поведения объекта (действия объекта).

 

Свойства – переменные;

Действия – подпрограммы (функции);

Подпрограммы, содержащие описания действий объекта, называются методами;

Набор конкретных значений переменных, характеризующих объект, определяет состояние объекта.

 

Объект в ООП – это совокупность переменных состояния и связанных с ними методов (операций).

Эти методы, с одной стороны, определяют, как объект взаимодействует с внешним миром.

С другой стороны, методы осуществляют переход объекта из одного состояния в другое, причем метод проверяет, возможен ли такой переход в данной ситуации.

 

 

Класс (class) – это тип данных, включающий в себя группу данных различных типов (свойства) и методы работы с этими данными;

Объект (object) – это экземпляр класса, обладающий набором свойств с заданными значениями;

Свойство (property) – характеристика объекта, представленная в виде переменной, являющейся членом класса;

Метод (method) – это подпрограмма, входящая в состав класса и управляющая данными объекта;

Событие (event) – какое-либо происшествие в программе, системе, например, была нажата кнопка мыши;

Сообщение (message) – адресованная конкретному объекту информация о происшедшем событии.

 

Объявление класса:

 

class <имя класса>

{

public:

<объявление переменных, констант, функций>

private:

<объявление переменных, констант, функций>

protected:

<объявление переменных, констант, функций>

};

 

class Printer

{

private:

char model[15]; //модель принтера

int year; //год выпуска

int status; //состояние принтера

public:

void init_printer(char* _model, int _year);

void set_print();

void stop_print();

void show();

};

 

 

методы

void Printer::init_printer(char* _model,int _year)

{strcpy(model,_model); //инициализация свойства model

year=_year; //инициализация свойства year

status=0; //начальное состояние – готов к печати}

 

void Printer:: set_print()

{ if (!status) status=1;}

 

void Printer:: stop_print()

{ status = 0;}

 

void Printer:: show()

{cout<<"Model:"<<model<<"year:"<<year<<"status:"<<status<<endl;}

 

 

Создание объекта, инициализация свойств объекта, изменение состояния объекта и вывод его текущего состояния на экран

int main(void)

{

Printer printer; //создание объекта

//инициализация свойств объекта

printer.init_printer("HP5P", 1999);

printer.show(); //вызов метода объекта

printer.set_print();

printer.show();

printer.set_print();

printer.show();

printer.stop_print();

printer.show();

return 0;

}

Для создания объекта используется специальный метод, называемый конструктором.

Конструктор включается в состав класса в разделе public:

class Printer

{

public:

Printer(); //Конструктор

};

Printer:: Printer()

{

strcpy(model,"Canon_BJC250");

year=2000;

status=0;

}

Конструктор выделяет память под объект, достаточную для размещения всего объекта, и инициализирует переменные состояния объекта

 

class Printer

{…

public:

//Конструктор с параметрами

Printer(char* _model, int _year);

…};

Printer:: Printer(char* _model, int _year)

{

strcpy(model, _model);

year=_year;

status=0;

}

int main(void)

{

Printer printer1("HP5P",1999);

printer1.show();

return 0;

}

 

Для разрушения объекта используется метод, называемый деструктором. Для деструктора, также как и конструктора, не указывается тип возвращаемого значения, имя совпадает с именем класса, только перед именем помещается знак ~ (тильда).

 

class Printer

{…

public:

Printer(char* _model, int _year);
~Printer(); //Деструктор

…};

Деструктор может отсутствовать в составе класса, тогда для разрушения объекта создается деструктор по умолчанию.

Деструктор обязательно должен быть включен в класс, если какие-либо свойства класса помещаются в динамической памяти.

class Printer

{

char* model; //указатель на строку, которая будет

//содержать название модели и разместится

//в динамической памяти

int year; //год выпуска

int status; //состояние принтера

public:

Printer(char* _model, int _year);

~Printer();

void set_print();

void stop_print();

void show();

}

Printer:: ~Printer()

{

//Освобождение динамической памяти

delete[] model;

//Присваивание указателю значения пустого

//указателя, обязательно в Visual C++ 6.0

model = NULL;

}

Явный вызов деструктора не требуется, так как его вызов будет выполнен автоматически в точке программы, где объект должен быть разрушен в соответствии с его временем жизни.

Вступительная лекция.

«Безопасность жизнедеятельности как категория»

 

1. Основные понятия и определение в безопасности жизнедеятельности.

2. Классификация источников опасности, опасных и вредных факторов.

3. Сжатая характеристика окружающей среды, что окружает человека

 




Дата добавления: 2014-11-24; просмотров: 90 | Поможем написать вашу работу | Нарушение авторских прав




lektsii.net - Лекции.Нет - 2014-2024 год. (0.014 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав