Функции для работы со строками и символами
Алгоритм – это конечная, упорядоченная последовательность действий, приводящая к результату. 2. Переменная — этообласть памяти, которой назначено имя (идентификатор). 3. Идентификатор – это имена переменных, констант типов, функций и других элементов программ. 4. Выражение – это записанное по определённым правилам комбинация переменных,констант, обращение к функциям и операциям. 5. Константа — способ адресации данных, изменение которых не рассматривается программой. 6. Массив – сложный тип данных который характеризуется следующим: все элементы имеют одинаковый тип, элементы занимают подряд идущие ячейки и располагаются в оперативной памяти. 7. Указатель – это специальная переменная, которая хранит адрес на другую переменную. 8. Прототип функции - это объявление, не содержащее тела функции, но указывающее имя функции, типы аргументов и возвращаемый тип данных. 9. Функция – это подпрограмма которая выполняет какое-либо законченное действие. 10. Структура - это совокупность переменных, объявленных под одним именем. 11. Структура union - это объект, позволяющий нескольким переменным различных типов занимать один участок памяти. 12. Структура enum - это набор именованных целочисленных констант, определяющий все допустимые значения, которые может принимать переменная. 13. Инкапсуляция – это свойство скрывать некоторые свои данные и способы их обработки от окружающей среды 14. Наследование – это процесс создания новых классов, называемых наследниками или производных классов из уже существующих или базовых классов 15. Виртуальная функция — это функция, которая определяется в базовом классе, а любой порожденный класс может ее переопределить. 16. Полиморфизм — свойство классов, позволяющее использовать объекты классов с одинаковым интерфейсом без информации о типе и внутренней структуре объекта. 17. Абстрактный класс – это класс в котором присутствует хотя бы одна чистая виртуальная функция. Этот класс не может создаватьобъекты. 18. Перезагрузка функции – это использование функций с одним и тем же именем, но разными типами параметрами 19. Рекурсия – это функция вызывающая саму себя. 20. Класс – это сложный структурированный тип данных объединяющий переменные и функции для работы с ними 21. Конструктор – это специальная функция для инициализации всех или некоторых полей класса 22. Деструктор – это специальный метод, применяющийся для освобождения памяти занимаемой объектом 23. Объект – это переменная тип Класс. 24. Метод пошаговой детализации – систематический метод проектирования, кодирования тестирования программ в виде последовательности шагов 25.classA { private: public: Void b(параметры); }; Void A :: b(параметры) {} 26.Под перегрузкой функции понимается, определение нескольких функций (две или больше) с одинаковым именем, но различными параметрами.Перегрузка функций нужна для того, чтобы избежать дублирования имён функций, выполняющих сходные действия, но с различной программной логикой. 27.intsum(int , int ); - объявлениефункцииспараметрами int sum(int num1, int num2) – определениефункции { return (num1 + num2); } Условный оператор Ifelse if (условие) { Выражение 1; } else { Выражение 2; } Вложенный оператор if If (условие1) { Выражение1; } else If (условие 2) { Выражение 2; } Оператор выбора Case switch (условие) { case 1:выражение; { /*группа операторов*/; break; } case 2:выражение; { /*группа операторов*/; break; } default: { /*группа операторов*/;} } Цикл с предусловием dowhile do { Выражение; } while (условие выполнения цикла); Ложно – выполняется и выходит Истинно - выполняется пока не будет ложным Цикл с постусловием while while (условие продолжения цикла while) { Выражение; } Ложно - сразу выходит Истинно - выполняется пока не будет ложным Цикл с повторением for (выражение1;выражение2;выражение3) { /*один оператор или блок операторов*/; } Выражение1 –переменная и начальное ее значение Выражение2 – условие выполнение цикла Выражение3 –изменение значение переменной sum (2 , 2); - вызовфункции 28.– 29 29. – 28 30.Связь в виде простого наследования предполагает, что производный класс имеет только одного родителя (происходит только от одного базового класса). Множественное наследование подразумевает, что дочерний класс имеет больше, чем одного родителя. 31.Указатели ссылаются на участок в памяти, используя его адрес. А ссылки ссылаются на объект, по его имени Int *a; -объявление указателя a= &b; -присваивание переменной а адрес b a =*b –присваивание переменной а значение b int *a = &d; - указатель на переменную d 32.Если модификатор доступа не указан, то в struct будет подразумеваться, что он public, а в class, что он private. Обычно struct используется для объявления классов без поведения, т.е. тех чья единственная функция – хранение данных. 33. Наследование – это процесс создания новых классов называемых наследниками или производных классов из уже существующих или базовых классов class *имя производного класса* : *спецефикатор доступа* *имя базового класса*{*код*}; 34.Для разных объектов вызываются разные версии одной и той же виртуальной функции. Чисто виртуальная функция (purevirtualfunction) является функцией, которая объявляется в базовом классе, но не имеет в нем определения. Поскольку она не имеет определения, то есть тела в этом базовом классе, то всякий производный класс обязан иметь свою собственную версию определения. Чистая виртуальная функция - virtual тип имя_функции(список параметров) = 0; Виртуальная функция –virtualтип имя функции(параметры) { } 35.?!?!?? 36.формальный параметр — аргумент, указываемый при объявлении или определении функции. фактический параметр — аргумент, передаваемый в функцию при её вызове; 37.–
38.
39.Объявления одномерного массива
/*тип данных*/ /*имя одномерного массива*/[/*размерность одномерного массива*/];
Int a[2];
Inta[2]={1,2}; -инициализация одномерного массива
Inta[]={1,2}; -инициализации массива без определения его размера
For(i=0;i<n;i++) –ввод одномерного массива
Cin>>a[i];
a[2] = 1;
*(a+2) = 1;
int* a = newint [2]; -выделение памяти под одномерный массив a
delete [ ] a; - очищение памяти под одномерный массив a
Объявления двумерного массива
/*тип данных*/ /*имя массива*/[/*количество строк*/][/*количество столбцов*/];
Inta[2][2]
Int a[2][2] = {{1,2}, {3,4}}; -инициализация двумерного массива
Constintn=2 ,m=2;
For(i=0;i<n;i++) – вводдвумерногомассива
For(i=0;j<m;j++)
Cin>>a[i][j];
Int **mas – выделение памяти под двумерный массив
Mas = new int*[n];
For(i=0;i<n;i++)
Mas[i] = new int[m];
for(i=0; i<n; i++) - удаление памяти под двумерный массив
delete [ ]mas[i];
40.
| Спецефикатор доступа | Доступ из тела класса | Доступ из производных классов | Доступ из внешних классов и функций |
| Private | Есть | Нет | Нет |
| Public | Есть | Есть | Есть |
| Protected | Есть | Есть | Нет |
41.Конструктор копирования -
имя_класса (constимя_класса&ob) {/*выделение памяти и копирование в нее ob*/ }
AB(int A, int B) { }
AB() { }
42.charstring = 'a'; - объявления символьной переменной
charstring[5]; - пример объявления строки на 4 символов (последний \0)
charstring[5] = "abcd"; -инициализирована строки начальным значением
charstring[5] = {'a', 'b', 'c', 'd','\0'}; -посимвольная инициализация строки
charstring[] = "abcdefghf"; - инициализация строки без указания размера
cin.get(string); -считывание строк с пробелами
Массивыстрок
constinta= 5; // количество строк в массиве
constintb=5; // максимальная длина каждой из них
chararr[a][b] {“ ” , ” ”};
for(intj = 0; j<a; j++) // вывод всех строк на экран
cout<<arr[j] <<endl;
Функции для работы со строками и символами
strcpy(s1,s2) - копирование символов из строки s2 в строку s1
strncpy(s1,s2, n) - копирование n символов из строки s2 в строку s1. возвращает значения s1
strcat(s1,s2) - объединяет строку s2 со строкой s1. Результат сохраняется в s1
strncat(s1,s2,n) - объединяет n символов строки s2 со строкой s1. Результат сохраняется в s1
strlen(s1) - определяет длину указанной строки, без учёта нуль-символа
strcmp(s1,s2) сравниваетстроку s1 сострокой s2 : 0 – s1==s2, 1 – s1<s2, -1 —s1>s2 .
strncmp(s1,s2,n) сравнивает n символов строки s1 со строкой s2 и
0 – s1==s2, 1 – s1<s2, -1 — s1>s2 .
strchr(s1,c) поиск первого вхождения символа с в строке s. В случае удачного поиска возвращает указатель на место первого вхождения символа с. Если символ не найден, то возвращается ноль.
strstr(s1,s2) поиск первое вхождение подстроки s2 в строке s1. В случае удачного поиска возвращает указатель на первое вхождение строки s2 в строку s1 . Еслизначениененайдено, товозвращаетсяноль.
43.
44. union union_type {
inti; char ch;
};
45.enumenum_stru { a , b ,c } ;
46.Перегрузка операции - operator +-*/ (список-аргументов)
47.
48. **
49.Дружесвенные функции – это функция которая не является членом класса но имеет доступ к членам класса объявленных в полях private или protectd.
Дружественная функция - Friendintfun();
Дружественные классы – *Friendclass имя класса*;
- Дружественная функция может располагаться в любом поле класса – private, public или protected. Она при любых обстоятельствах будет иметь доступ к private-элементам класса и, даже если она сама находится в поле private (как в нашем примере), к ней можно будет обратиться вне класса, не используя специальных методов.
- Когда мы определяем дружественную функцию, элементы класса необходимо явно передавать в нее в виде параметров функции. Так как она не является компонентом класса, она не получаетуказатель this.
- В виде параметра, в дружественную функцию так же надо передать указатель или ссылку на объект класса. Иначе она не увидит данные какого класса ей принять и обработать.
- Функция может использоваться, как дружественная к нескольким классам.
- Вызываются дружественные функции, как обычные функции. После внесения всех необходимых параметров в нее при вызове, она сама увидит с элементами какого класса и объекта надо работать.
- Не наследуется производным классом .
50.
Обработка исключительных ситуаций –
try {
// код, подлежащий контролю
// функции могут генерировать исключительные ситуации
// может содержать несколько оператор или целую программу
}
catch (тип1 аргумент) {
// перехват исключительных ситуаций
}
Дата добавления: 2018-08-06; просмотров: 148; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!
