Ojo, que la sobrecarga de funciones/operadores de C++ te proporciona unas excelentas herramientas para detectar estas cosas en tiempo de compilación.
De hecho, ese es el mecanismo que usa cout.
De hecho, ese es el mecanismo que usa cout.
dirás en tiempo de ejecución?
y si, hay herramientas para eso... pero es justamente por lo que digo... el lenguaje se hizo para que fuera rápido y efectivo, las validaciones van de tu parte...