uaip
Messages postés
1466
Date d'inscription
mardi 20 février 2007
Statut
Membre
Dernière intervention
7 février 2011
9 déc. 2008 à 20:00
Fonction amie -> jamais entendu parler.
Class -> c'est la POO (Programmation Orientée Objet).
EN gros, en C, le code est organisé en fonctions (c'est un langage fonctionnel). C'est à dire que les données sont stockées dans des variables, et les opérations se font grace à ces fonctions.
Par exemple :
#include <stdio.h>
int carre(int x) {
return(x*x);
}
int main() {
int nombre= 5 ;
int carre_nombre =carre(nombre);
printf("Le carre de %d est %d",nombre,carre_nombre);
return0;
}
Le C++ a intégré la POO, c'est à dire que chaque "élément" du programme est considéré comme un objet (ou une instance de telle ou telle classe).
Petit exemple de la vie courante : imagine la classe "voiture".
Cette classe contient des propriétés (nommées attributs), comme par exemple le nombre de portes, la vitesse max, le nombre de places, la taille du réservoir, etc...
On peut également interagir sur cette classe ("voiture"), comme par exemple avancer, reculer, tourner à droite ou à gauche, etc... On appelle ça les méthodes.
Et bien avec cette classe "voiture", tu peux par exemple déclarer un modèle "Renault_Megane". Ainsi tu lui attribues 5 portes, une vitesse max assez élevée, etc... Ce modèle "Renault_Megane" est appelé instance de la classe "voiture".
En C++ c'est pareil, ton programme sera organisé en classes, et n'auras qu'à interagir sur ses instances.
Quel intêret ? Et ben... Regarde les jeux vidéos par exemple. Tu déclares par exemple une classe "Adversaires", en lui attribuant une position, un level, un niveau de vie, etc... et si dans ton jeu tu as 3 adversaires, alors tu déclares 3 instances de cette même classe.
Pour le code, c'est assez "complexe" à comprendre, surtout si tu débutes, mais en gros voilà un exemple :
Je déclarer une classe "Adversaires" contenant une position (x et y, on va dire que c'est en 2D ^^), un level, un niveau de vie, et des méthodes (pour agir se l'instance) comme se déplacer ou tirer.
class Adversaires {
public:
Adversaires(intx,inty); //Constructeur de la classe
void tirer();//Tirer
void se_deplacer(int x,int y);//Se déplacer
private:
int x;//Coordonnée sur l'axe des abscisses
int y;//Coordonnée sur l'axe des ordonnées
int level;//Level
int vie;//Niveau de vie
};
Si tu ne comprends pas le code, disons que c'est normal, j'espère cependant avoir pu t'aider (repense à l'exemple des voitures dans la vie courante ou des adversaires dans un jeu vidéo).
Cordialement, uaip.