Bonjour,
Une classe est une définition. Tu y définis un ensemble de données (les attributs) et de procédures (les méthodes) pour manipuler ces données. Ensuite, tu crées des objets à partir ce cette classe (tu instancies la classe). Ce sont ces objets que tu manipules, pas la classe.
Pour moi, tu n'as pas encore compris cette notion de définition et d'instanciation. Par exemple, dans l'exemple ci-dessus, tu définis une classe compte, que tu instancies 2 fois : ccp et livretA. En fait ccp et livretA sont des valeurs d'un attribut du compte, que tu n'as pas identifié dans ta classe : le nom du compte...
De plus, la fonction main n'est que le point de départ de ton programme, permettant d'initialiser ce qui est nécessaire pour démarrer. Voici un exemple de main d'une application graphique (développée sous Qt) :
#include "mainwindow.h"
#include <QApplication>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show();
return a.exec();
}
Certains programmes ont besoin d'initialiser quelques données supplémentaires au démarrage, mais ça reste toujours concis.
Personnellement, j'aime bien cet auteur et ce livre :
https://www.eyrolles.com/Informatique/Livre/programmer-en-c-moderne-9782212678956/ Voir quelques commentaires ici :
./viewtopic.php?pid=22120809#p22120809
En Programmation Orientée Objet, beaucoup de choses sont possibles. Tu peux passer des objets en argument, tu peux retourner des objets, tu peux définir des objets comme attribut...
Ce qui est ci-dessus est du ressort de la syntaxe. Il faut ensuite structurer le code. Regarde un peu sur le net la notion de modèle-vue-controleur (model-view-controller si tu peux regarder les publications en anglais)