Я хотел бы использовать шаблон std::add_pointer<type>
из заголовка C++ <type_traits>
для создания указателя на тип массива.C++ add_pointer шаблон с типом массива
Однако следующее генерирует ошибку
double *y[2];
std::add_pointer<double[2]>::type x;
y = x; // generates error
Мой компилятор MSVC C++ поставляется с SDK 7.1 говорит
ошибка C2440: '=': не удается преобразовать из «двойной (*) [2 ]»в 'двойной * [2] там нет преобразования в типах массивов, хотя есть преобразования в ссылки или указатели на массивы
Что я могу здесь пропустить?
EDIT: Я хочу, чтобы y являлся 2D-массивом с одним размером 2 и другой переменной. Использование по назначению является
y[i][0]
и y[i][1]
Одним из них является массив указателей, а другой является указателем на массив. Не то же самое. –