Сделать массив для хранения вычисленных чисел в памяти

Я пытаюсь сделать массив для хранения вычисленных чисел из формулы и положить их в память. Чтобы потом, когда число снова вызывалось, его не нужно пересчитывать. Потому что уже в памяти.

Формула

fib(n-1) + fib(n-2);

Остальная часть моего кода это

#include <iostream>
using namespace std;

// Returns the nth number in the fibonacci sequence
int fib(int n);

int main()
{
    cout << fib(46) << endl;

    system("pause");
    return 0;
}

int fib(int n)
{
    // Base cases
    if (n == 1 || n == 2) return 1;

    // Recursive cases
    return fib(n-1) + fib(n-2);
}

Спасибо, парни

Ответы на вопрос(2)

Ваш ответ на вопрос