APP1 Flashcards
(21 cards)
À quoi sert le terme const?
Le terme const sert à « promettre » qu’on ne va pas modifier une variable
Qu’est-ce que un classe abstraite?
- Une classe est abstraite dès qu’un méthode est virtuel pure, ce qui veux dire qu’il y a un =0 à la fin de la définition et un virtual au début
- Dès qu’il y a une méthode virtuel, dans une classe, on dit qu’elle est abstraite et on ne peut donc pas créé d’objet provenant de celle-ci
Qu’est-ce que une classe abstraite?
Une classe abstraite est une classe qui ne sert qu’au polymorphisme, donc elle ne sert qu’à créer des classe enfant.
À quelle momment il faut utiliser un ‘ . ‘ et à quelle momment il faut utiliser un ‘ -»’ quand on veut accéder à une méthode d’un classe?
- il faut utiliser le point, dès que la classe n’est pas un pointeur
Quand il y a un fichier.cpp d’une classe comment on écrit le code d’une méthode?
type NomDeLaClasse::méthode(type var) { code ici; return s’il faut; }
Quand sont appeler les constructeurs et destructeurs lors d’un programme?
Les constructeurs sont tout le temps nécessaire puisque c’est le code dans le constructeur qui est exécutée chaque fois qu’un objet d’un classe est initialisé.
Les destructeurs sont appeler à la fin de l’exécution du programme, souvent ont y retrouve des deletes lorsqu’il y a de l’allocation dynamique
Qu’on de particulier les constructeurs et les destructeurs?
- ils portent le même nom que la classe
- Le destructeur à un ~ devant
- Ils ne requierent pas de type devant leur déclaration
Quelle est la commande en code pour ne pas avoir besoin de toujour utiliser std:: ?
using namespace std
Quelle sont en générale les méthodes pour accéder à des variables privées?
setVariable();————-souvent nommée Setter
getVariable();————souvent nommée Getter
Pourquoi voudrait-on mettre des variables en protected/private?
Permet de proteger des valeurs qu’on ne veut pas qui soit modifiable par l’usager—-question de protection de données
Quelle est le code à mettre en haut d’un fichier.h?
#ifndef NOMDUFICHIER #define NOMDUFICHIER ... ... #endif
Que contient la première ligne de comande d’un makefile?
La première ligne commence par le nom du projet, suivit par deux point et tous vos .o.
En dessous, faire g++ -o suivit du nom du fichier et de tout les .o ex :
monProjet: unFichierMain.o unAutreFichier.o leDernierFichier.o
g++ -o monProjet unFichierMain.o unAutreFichier.o unDernierFichier.o
Avant chaque g++ nomDuFichier.cpp -g -c, il faut une ?
tabulation, JAMAIS des espaces
Qu’est-ce que un makefile
Fichier texte qui contient des règles qui permettent, de gérer un projet de compilation
Trois caractéristiques d’un objet
- État (données membres, attributs)
- Comportement (méthodes)
- Identité (nom)
Relation entre un objet et une classe
- Chaque objet est décrit par une classe.
- Une classe modélise et classifie une catégorie d’objets
- Une classe regroupe des objets qui ont des caractéristique similaire
- Les objets sont des instances d’une class
Un diagramme de classes permet de représenter quoi?
-Les types des objets (les classes) qui composent un système
-Les différents types de relations
statiques qui existent entre eux.
-Représente les propriétés et les opérations des classes
-Les contraintes sur la façon dont les objets sont connectés.
Qu’est-ce que un diagramme d’état de transition?
_C’est un type de diagramme comportementale qui représente les transition entre divers objets
Code pour insérer dans un vecteur
bool Pile::inserer(int val) { int *temp; if(taille >= capacite) { temp = new int[capacite*2]; for(int i = 0; i < capacite ; i++) { temp[i] = data[I]; } delete [] data; data = temp; capacite *= 2; } data[taille++] = val; return true; }
comment fini un makefile?
clean:
rm -f *.o
Qu’est-ce que le polymorphisme?
- C’est quand il existe une hiérarchie de classes et qu’elles sont liées par héritage
- Un exemple est quand une fonction membre entraînera l’exécution d’une fonction différente en fonction du type d’objet qui appelle la fonction