Saludos amigos de foros del web
tengo una duda acerca de c++ , no llevo mucho tiempo con el , de mano ya sabia C y java por un lado, asi que me motivé por aprenderlo debido a similitudes con estos dos lenguajes.
Mi problema es que por ejemplo si yo tenia en java por decir un ejemplo.
Dos archivos , uno main.java (que contenga el main ) y otro usuario.java(que contenga datos de un usuario) , siendo estos dos archivos de el mismo paquete bastaba con que en el main crear un objeto e ir llamando a los métodos de la clase usuario.java según se requieran.
Ahora bien , como aprendiz de C++ mi intencion como buen lenguaje orientado a objetos es no hacer todo en un solo archivo con el main todo junto y separar mis clases, cada una en un archivo.cpp distinto (incluyendo el main) y desde este ir conduciendo la lógica del programa, pero he aqui mi duda
Para este proposito , si quiero hacer algo como lo expliqué en el ejemplo de java, ¿la unica forma es mediante los archivos de cabezera? , creando un usuario.h y de ahi definiendo su respectivo usuario.cpp con la definicion de sus metodos , no? ¿No puedo definir los metodos en el mismo usuario.h , o a fuerzas tengo que hacer otro usuario.cpp solo para definirlos? ¿Cual seria la forma correcta de hacerlo?
Este procedimiento se parece a lo llamado interfaces en java , debido a su limitacion por tener herencia simple , ¿acá se usan para comunicar las clases entre ellas? y C++ al tener herencia multiple no necesita usar el concepto de interfaces como en java. ¿sino que para comunicarse entre distintos .cpp se usarian los archivos de cabezera, volviendo a mi pregunta?
Espero me puedan ayudar !!
Desde ya muchas gracias
PD: si ya sé ! me complico solo xD
Saludos