Range loops – Escrevendo código seguro

Eu estava olhando um código de um sistema e me deparei com um trecho que me fez torcer o nariz. O código funcionava, mas imediatamente vi dois problemas potenciais: Bug de int/unsigned int Um vector::size() – 1 Se size for 0, o resultado será 4294967295 ou 0xFFFFFFFF! Código confuso e facilmente quebrável msgs[count] – Não…