Литералы 2D-массива в C ++

I ' m пытается построить 2D-массив в виде указателей на указатели. Это не работает:

bool** data =  {
    new bool[4] {true, true, true, true},
    new bool[4] {true, false, false, true},
    new bool[4] {true, false, false, true},
    new bool[4] {true, true, true, true}
};

Возможно ли это? Как мне это делать?


РЕДАКТИРОВАТЬ:

Похоже, я пытался сделать неправильный поступок. У меня есть функция, которая принимает в качестве аргументов двумерный массив из bool неизвестного размера, а также целочисленные ширину и высоту. В настоящее время подпись такова:

 foo(bool** data, int width, int height)

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

7
задан Eric 9 February 2012 в 12:39
поделиться