Podemos usar o `const_cast` para modificar uma variável constante? [duplicado

Esta pergunta já tem uma resposta aqui:

ois valores diferentes no mesmo endereço de memóri respostas
int main()
{
    const int ia = 10;

    int *pia = const_cast<int*>(&ia);
    *pia = 5;

    std::cout << &ia << "\t" <<  pia <<endl;
    std::cout <<  ia << "\t" << *pia <<endl;

    return 0;
}

A saída é:

0x28fef4       0x28fef4
10             5

*pia eia têm o mesmo endereço, mas eles têm valores diferentes. Meu objetivo é usarconst_cast para modificar um valor constante, mas como o resultado mostra que ele não funcion

Alguem sabe por quê