Информацию о массиве Вы уже потеряли на этот момент: arr содержит только указатель на первый элемент. И изменить это нельзя в таком случае, поскольку информация запрашивается на компиляции (при выборе перегрузки, например), а становится известной на выполнении (в Вашем случае с new[]).
Да понял и просто сделал std::rotate(arr, arr+1, arr+n); n которые длина массива
Обсуждают сегодня