Як створити масив

Масиви є однією з найпростіших і, можливо, найбільш використовуваною формою структурованого зберігання даних при обробці інформації в комп'ютерних програмах. Основна їх перевага - можливість дуже швидкого доступу до елементу за його порядковому номеру (індексу). Створити масив в мові C ++ можна кількома способами.
Як створити масив




Вам знадобиться
  • - текстовий редактор;
  • - компілятор С ++.
Інструкція
1
Створіть масив фіксованого розміру. Його декларація повинна містити тип значень, ідентифікатор змінної і специфікацію розмірності із зазначенням кількостей елементів. Наприклад, одновимірний масив цілих значень, що складається з десяти елементів, можна визначити так: int aNumbers [10] -подібні чином можна створювати і багатовимірні масиви: int aNumbers [3] [4] -Для ініціалізації подібних змінних можна використовувати літерали масивів: int aNumbers_1 [10] = {1, 2, 3} - int aNumbers_2 [3] [3] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}} - Зверніть увагу на те, що кількість елементів літеральних масивів-ініціалізаторів може бути менше ніж у ініціалізіруемих їм змінних. У цьому випадку частини елементів масиву-приймача просто не будуть присвоєні значення.


2
Створіть масив, обсяг якого визначається ініціалізувалися літералом. Декларуйте масив, що не специфікуючи його розмір. Масиви, певні подібним чином, обов'язково повинні бути ініціалізовані: int aNumbers [] = {1, 2, 3} -так же чином можна створювати багатовимірні масиви. Однак «змінним» допускається робити тільки одне, перший вимір: int aNumbers [] [3] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}, {0, 1, 2}} - Даним способом дуже зручно визначати статичні константні масиви. Їх обсяг може бути обчислений на етапі компіляції з використанням ключового слова sizeof.
3
Створіть масив в динамічно розподіляє пам'яті. Визначте покажчик на значення типу елемента масиву. Виділіть пам'ять під необхідну кількість даних. Надайте вказівником значення адреси першого байта виділеного блоку. Використовуйте функції розподілу пам'яті бібліотеки C (calloc, malloc), оператор new C ++ або платформ-специфічні функції (такі як VirtualAlloc, VirtualAllocEx в Windows). Наприклад: int * paNumbers_0 = (int *) malloc (sizeof (int) * 10) -int * paNumbers_1 = new int (10) - paNumbers_0 [1] = 0xFF- // доступ до елементуpaNumbers_1 [2] = 0xFF- // доступ до елементуПосле закінчення використання створених таким чином масивів, необхідно звільнити виділену пам'ять: free (paNumbers_0) -delete [] paNumbers_1-
4
Створіть об'єкт класу, що реалізовує функціонал масиву. Подібні класи або шаблони класів містяться в багатьох популярних фреймворків та бібліотеках. Так, в стандартній бібліотеці шаблонів C ++ (STL) є контейнер std :: vector. Створити і використовувати масив на його основі можна наступним чином: std :: vector oVector- // декларація об'єкта масиву oVector.resize (10) - // зміна розміру массіваoVector [0] = 1 // доступ до елементуoVector.push_back (0xFF) - // додавання елемента в конецОбратіте увагу на те, що через автоматичного управління пам'яттю і наявності зручних методів модифікації (зміна розміру, додавання елементів, і т.д.), використання подібних класів часто буває більш доцільним, ніж застосування масивів у стилі C.
Переглядів: 3254

Увага, тільки СЬОГОДНІ!