Продолжая с того места, где мы остановились:

#include <iostream>
using namespace std;
int main() 
{
  int num;
  cout << "What is your favorite number?";
  cin >> num;
  cout << "Wow! " << num << ", huh?" << "\nMine is 3.";
  return 0;
};

Мы узнали о библиотеке iostream, стандартном пространстве имен и простом вводе/выводе!

Перейдем к массивам! Каждый массив может содержать значения только одного типа данных, например int (целое число), char (символ), числа с плавающей запятой, двойное число и т. д...

Объявление массива:
dataType nameOfArray[arraySize]

Массив должен представлять: тип данных, которые будут храниться, имя массива и количество элементов в массиве. Перед инициализацией нашего первого массива существует несколько типов типов данных и соответствующих им битов данных. Это — отличный ориентир, когда вы решаете, какой тип данных использовать для достижения эффективного управления памятью. JavaScript позволяет нам сорваться с крючка таким образом, что существует процесс сборки мусора, освобождающий нашу память, когда наша программа не использует ее. В C++ управление памятью у нас ручное — мы коснемся этой темы в следующих постах, но об этом нужно помнить.

Давайте объявим наш первый массив!

short favoriteNumbers[10];

Это так же просто, как то, что мы объявили массив с именем favoriteNumbers, который может содержать до 10 значений. В этом примере мы объявляем favoriteNumbers с короткими — короткие и целые оба являются 2 байтами на 16 компиляторах; на компиляторе 32 int — 4 байта, а short — 16 бит. 8 бит эквивалентны 1 байту.

#include <iostream>
using namespace std;
int main() 
{
  int favorites[2]; // declare an array with 2 elements
  favorites[0] = 1; // assign first value of favorites to 1
  favorites[1] = 3; // assign second value of favorites to 3
  cout << sizeof favorites;
  return 0; // returns 8 because each value(int) is 4 bytes
};

В нашей основной функции мы объявили массив, который может содержать до 2 значений. Если мы попытаемся присвоить favorites[2] = 2;, наш компилятор проигнорирует это и выведет 8, потому что, когда мы объявили наш массив, нам разрешено хранить только 2 значения.

Размер массива постоянен, поскольку он занимает блоки нединамической памяти.

Когда int favorites[2] объявляется, значения в этом массиве равны 0 (не undefined или null), пока мы не присвоим ему значение.

Другие способы инициализации массива:

int favorites[3] = {1,3,8}; Немедленно присвойте значения favorites после его объявления.

int favorites[] = {1,3,4}; Компилятор подсчитает количество элементов.

array<int, 3> favorites; Эту инициализацию можно использовать только тогда, когда мы указываем в начале нашей программы #include <array> — это разрешает доступ к библиотеке массивов. array<int, 3> favorites {1,3,4}; также разрешено.

int favorites[3] = {1,3,8};
int myFavorites[3];
myFavorites = favorites

В отличие от Javascript, это не разрешено в C++. Данные не могут быть переданы таким образом, потому что данные в нашем массиве избранного указывают на место в памяти. Далее мы обсудим массивы со строками, структурами и указателями!