Recientemente estuve modificando un código y encontré un error preexistente en una línea dentro de una función:
std:;string x = y;
Este código aún se compila y funciona como se esperaba.
La definición de cadena funciona porque este archivo lo es using namespace std;, por lo que std::era innecesario en primer lugar.
La pregunta es, ¿por qué está std:;compilando y qué está haciendo, si es que está haciendo algo?
using namespace std;.