Я тестировал с помощью C ++ 11. В моей работе это нормально работает для меня
Вы можете отсортировать любой контейнер констант в c ++, используя указатель.
В вашем случае, если вы хотите отсортировать этот вектор, используя sort(v.begin(),v.end())
тогда это приведет к некоторой ошибке во время выполнения из-за нарушения const
.
Но вы можете отсортировать ваш контейнер следующим образом -
vector<int>*temp=(vector<int>*)&v;
sort(temp->begin(),temp->end());
После этого ваша константавектор v будет выглядеть так:
const vector<int> v = {1,2,3,4,5}