Я считаю массивы указателями, потому что на практике переменная, которая содержит массив, является просто указателем на первый элемент массива. Кроме того, вы можете использовать operator [] в любом указателе, даже если он не указывает на массив.
С этой линии мысли:
mp - указатель на «блок целочисленных указателей», а mp [x] - указатель на «блок целых чисел».
Теперь, эти «куски памяти» - это то, что я бы назвал массивом, так что у вас есть:
mp - указатель на массив целочисленных указателей, а mp [x] - указатель на массив целых чисел.
В вашем примере у вас есть в общей сложности 7 массивов (блоков памяти), по одному на каждый оператор new . Не забудьте удалить [] каждый из них после того, как вы закончите с использованием структуры.