Можно ли создать инициализированный двухмерный динамический массив?

Можно ли в C++ создать инициализированный двухмерный динамический массив? Например, чтобы следующий массив стал динамическим:

int array[3][8] =
{
    {50, 200, 1000, 2500, 5000, 20000, 50000, 10000000},
    {50, 50, 100, 300, 500, 1500, 3000, 5000},
    {79, 89, 156, 252, 381, 494, 532, 965}
};

Я думал сделать что-то вроде

auto array = new int[3][8];

Но в этом случае каждому элементу значение нужно вручную присвоить.

array[4][3] = 4;

Ответы (1 шт):

Автор решения: Andrei

Динамический массив инициализируется вот так:

#include <iostream>

using namespace std;

int main()
{
    auto array = new int[3][8]
    {
        {50, 200, 1000, 2500, 5000, 20000, 50000, 10000000},
        {50, 50, 100, 300, 500, 1500, 3000, 5000},
        {79, 89, 156, 252, 381, 494, 532, 965}
    };

    for (int i = 0; i < 3; ++i)
    {
        for (int j = 0; j < 8; ++ j)
        {
            cout << array[i][j] << " " << endl;
        }
        
        cout << endl;
    }


    delete[] array;
    
    return 0;
}
→ Ссылка