Вектори - раздел Программирование, Процедурно-орієнтоване (структурне) програмування Вектори – Це Безперервні Блоки Пам’Яті, Що Зберігають Множину Елементів Того ...
Вектори – це безперервні блоки пам’яті, що зберігають множину елементів того самого типу. Вони оголошуються за допомогою зазначення кількості елементів, що повинно бути позитивним цілим константним виразом, обмеженим квадратними дужками[]. Мають тільки одну розмірність. Багатомірні масиви, використовувані в інших мовах, у С++ представляються вектором покажчиків на вектори.
float vf[10]; // вектор з 10 float
int vvi[50][8]; // 50 векторів з 8 int кожний
char* vpc[5]; // вектор з 5 покажчиків на char
Можуть бути ініціалізовані (якщо мають статичний клас пам’яті) набором значень, обмежених фігурними дужками. Особливий випадок – це вектор символів (char), що може бути ініціалізований рядковою константою.
Перше максимальне число елементів може бути опущено, воно дорівнює кількості ініціалізуючих значень. Якщо кількість значень менше заданої кількості елементів, то елементи, що залишилися, ініціалізуються нулями (або еквівалентними значеннями). Якщо задані всі значення, то фігурні дужки можуть бути опущені.
char greeting[] = “Yes, master?”; // 13 елементів
int a[5] = {7,6,9}; // a[3] = a[4] = 0
int b[][2] = {{1,2},{3,4},{5,6}}; // [3][2]
int c[][2] = {1,2,3,4,5,6}; // {} опущені
int d[][2] = {{1},{2},{3}}; //{}не можуть бути опущені d[0][1] = d[1][1] = d[2][1] = 0
Ім’я вектора саме по собі є адресою першого елемента цього вектора:
v = &v[0]
Єдиним винятком є використання імені вектора в операції sizeof. При цьому результатом операції буде кількість байт, що займає весь вектор.
new type – виділяє простір для типу type і повертає адресу. Для класів, крім того, викликається конструктор. За відсутності достатнього обсягу пам’яті повертається нуль.
new type [ie] – виділяє простір для масиву з ie елементів типу type і повертає адресу. Для класів конструктор викликається для кожного елемента.
delete pe – звільняє пам’ять, на яку вказує pe. Для класів викликається деструктор. Якщо pe має нульове значення, то операція delete не виконує ніяких дій.
delete [] pe – звільняє пам’ять, зайняту масивом, на який вказує pe. Для класів деструктор викликається для кожного елемента масиву.
Структура програми
// Welcome.cpp
#include <stdio.h>
main()
{
printf("Hello, world");
return 0;
}
Перший рядок наведеної
Типи даних
Type
Size
char, unsigned char, signed char
1 byte
short, unsigned short
2 bytes
Константи
4.1. Цілі знакові константи
Десяткові
23, -42, +1991
Мають тип int, якщо значення константи не перевищує максимально припустимого значен
Перерахування
Перерахування дозволяють використати імена замість числових значень. Перерахування можуть задавати ім’я типу. Перерахування можуть бути ініціалізовані певними (цілими) значеннями. Також може бути в
Цикл do - while
do оператор while(вираз);
Цикл do - while являє собою скорочений запис для
label: оператор;
if(вираз) goto label;
Оголошення
Оголошення визначає ім’я функції, тип значення, що повертається, і типи аргументів.
// Два аргументи типу double і повертає значення типу double.
double Hypotenuse
Визначення
Визначення функції описує код, виконуваний під час виклику функції. Визначення функції може бути оголошено inline для оптимізації дуже маленьких функцій. Це оголошення не гарантує, що функція, огол
Покажчики
Покажчики – це змінні, які містять адресу іншої змінної або функції. Покажчики оголошуються за допомогою символу *.
int i, *pi = &i; // покажчик на int
int *pp
Посилання
Посилання – це друге ім’я для іншої змінної. Посилання оголошуються за допомогою символу &. При оголошенні посилання повинні бути ініціалізовані (посилання може бути ініціалізоване лише один ра
Структури
Структури – це набір зв’язаної інформації, можливо, різних типів, об’єднаний в один об’єкт. Структури можуть мати ім’я, що у цьому випадку буде ім’ям типу.
struct Call
Конструктори
Конструктори ініціалізують об’єкт класу з необов’язковим списком аргументів. Аргументи, якщо вони використовуються, можуть мати значення за замовчуванням.
Конструктори автоматично викликаю
Конструктори за замовчуванням
Конструктори за замовчуванням не мають аргументів (або всі аргументи мають значення за замовчуванням). Конструктор за замовчуванням потрібен, коли створюється масив об’єктів даного класу з використ
Деструктори
Деструктори виконують усі необхідні дії перед знищенням об’єкта. Деструктори автоматично викликаються компілятором:
1) при виході з області видимості;
2) при створенні тимчасових
Покажчики на члени класу
Покажчики на члени класу вказують на нестатичні поля або методи (включаючи віртуальні) будь-якого об’єкта класу.
struct Point
{
int x, y;
Оголошення
Оголошення похідного класу вводить новий тип. Оголошення похідного класу встановлює обмеження доступу private, protected або public для членів свого базового класу. За замовчуванням встановлюється
Оголошення доступу
Оголошення доступу дає можливість знову зробити захищеними або відкритими захищені і відкриті члени закритого базового класу в похідному класі. Дозволяють зробити знову відкритими відкриті члени за
Стани помилки
Стани помилки підтримуються кожним із потоків. Стани помилки зберігаються як набір бітів: eofbit, failbit і badbit. Множинні стани одержуються за допомогою операції побітового АБО.
int eof
Потокове виведення
Потокове виведення досягається при використанні змінних класів ostream або istream. Потокове виведення може застосовуватися з одним із визначених вихідних потоків або з вихідним потоком, що був виз
Потокове введення
Потокове введення досягається при використанні змінної класу istream або iostream. Може застосовуватися з визначеним вхідним потоком cin чи із вхідним потоком, визначеним користувачем.
Файлове виведення
Файлове виведення досягається при зв’язуванні вихідного потоку з файлом за допомогою змінної класу ofstream або fstream. Ці класи визначені у файлі заголовка fstream.h. Файлове виведення може викор
Файлове введення
Файлове введення досягається при зв’язуванні вхідного потоку з файлом за допомогою змінної класу ifstream або fstream. Ці класи визначені у файлі заголовка fstream.h. Файлове введення може використ
Стани форматування
Стани форматування управляють появою чисел при виконанні операції вставки у вихідний потік і форматуванням при виконанні операції зчитування із вхідного потоку. Стани форматування встановлюються за
Установка ширини поля
int width(int minimum);
– установлює мінімальну ширину поля для даного розміру й повертає попередню ширину поля. Нуль означає відсутність мінімуму. Коли при вставці в потік або витягу з по
Установка системи числення
ios& dec(ios&);
ios& oct(ios&);
ios hex(ios&);
ios& setbase(int);
– змінює систему числення, використовувану для подання цілих чисел при
Шаблони
Шаблони розширюють поняття функції й класу, надаючи можливості їхньої параметризації, тобто оголошення функцій і класів у термінах «будь-якого типу».
2. Шаблони функцій
Хотите получать на электронную почту самые свежие новости?
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Новости и инфо для студентов