¿Cómo puedo verificar si un número (tipo doble) almacenado como una cadena es un número doble válido en C ++?

Tengo un problema con un programa en el que estoy trabajando en C ++. Le estoy pidiendo al usuario que ingrese un número válido. Lo tomo como una cadena porque la tarea particular que estoy haciendo, lo hace más fácil a largo plazo. Para una verificación de errores básica, quiero verificar si el número ingresado es válido. Ejemplo:

Enter number: 3.14
This would be valid

Enter number: 3.1456.365.12
This shouldn't be valid

Respuestas a la pregunta(10)

Su respuesta a la pregunta