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

Масиви є однією з найпростіших і, можливо, найбільш використовуваною формою структурованого зберігання даних при обробці інформації в комп`ютерних програмах. Основна їхня перевага - можливість дуже швидкого доступу до елементу по його порядковому номеру (індексу). Створити масив в мові 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.


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


Оцініть, будь ласка статтю
Всього голосів: 169
Увага, тільки СЬОГОДНІ!