Top 50 Questions d’Entretien en Langage C++ – Partie 3

Questions d’Entretien sur le langage C++ avec des réponses pour la préparation des entretiens d’embauche, tests en ligne, examens et certifications. Ces questions et réponses sur le langage C++ comprennent divers sujets tel que les bases du langage C++, les boucles, les fonctions, les tableaux, les pointeurs, les structures des données, etc… Et sont tirés d’un vrai entretien écrit et certaines parties sont en direct. Cette méthode d’apprentissage systématique préparera facilement toute personne pour réussir son test sur le langage C++.
 
 

1. Qui a été le créateur de C++ ?
Bjarne Stroustrup.

 

 
 

2. C’est quoi un destructeur en C++?
Un constructeur est automatiquement appelé lorsqu’un objet est créé pour la première fois. Pareil, lorsqu’un objet est détruit, une fonction appelée destructeur est automatiquement appelée. Un destructeur a le même nom que le constructeur (qui est le même que le nom de la classe) mais il est précédé d’un tilde. Exemple:

class A{
 public:
  A(){      
  }
  ~A(){  //destructeur 
  }
}
void main(){
 A a();     
}

 

 
 

3. Que signifient les membres statiques et les fonctions membres statiques?
Lorsqu’une variable d’une classe est déclarée statique, son espace est alloué pour toute la durée de vie du programme. Quel que soit le nombre d’objets de cette classe qui ont été créés, il n’y a qu’une seule copie du membre statique. Ainsi, tous les objets de cette classe peuvent accéder au même membre statique.

Une fonction membre statique peut être appelée même si aucun objet de la classe n’existe et la fonction statique est accessible en utilisant uniquement le nom de la classe et l’opérateur de résolution de portée ::

 

 
 

4. Expliquer la notion d’héritage
L’héritage est le processus de création de nouvelles classes, appelées classes dérivées, à partir de classes existantes. Ces classes existantes sont appelées classes de base. Les classes dérivées héritent de toutes les fonctionnalités de la classe de base mais peuvent ajouter de nouvelles fonctionnalités et des raffinements qui leur sont propres.

 

 
 

5. Qu’est-ce qu’un constructeur de copie ?
Un constructeur de copie est une fonction membre qui initialise un objet en utilisant un autre objet de la même classe. Exemple:

class A{
	int x,y;
	A(int x, int y){
	 this->x=x;
	 this->y=y;
	}
};
	
void main(){
	A a1(5,6);
	A a2=a1; //constructeur de copie par défaut est appelé
}

Nous pouvons définir notre constructeur de copie. Si nous ne définissons pas de constructeur de copie, le constructeur de copie par défaut est appelé.

 

 
 

6. Quelle est la différence entre les fonctions virtuelles et les fonctions virtuelles pures?
Une fonction virtuelle est une fonction membre de la classe mère que vous redéfinissez dans une classe fils. Elle est déclarée à l’aide du mot-clé « virtual ». Exemple:

class A{
public:
 virtual void fun(){
    //corps de la fonction
 }
};

Une fonction virtuelle pure est une fonction qui n’a pas d’implémentation et qui est déclarée en assignant 0. Elle n’a pas de corps.

class A{
public:
 virtual void fun()=0;
};

Ici, le signe = n’a rien à voir avec l’affectation, et la valeur 0 n’est affectée à rien. Il est utilisé pour indiquer simplement au compilateur qu’une fonction sera pure et qu’elle n’aura pas de corps.
Fonction virtuelle en C++

 

 
 

7. Que sont les modificateurs d’accès en C++?
Vous utilisez les modificateurs d’accès pour définir l’accessibilité des membres de la classe. Ils définissent comment accéder aux membres de la classe en dehors de la portée de la classe.

Il existe trois types de modificateurs d’accès:

  • Private
  • Public
  • Protected

 

 
 

8. Différence entre l’opérateur égal à (==) et l’opérateur d’affectation (=) ?
L’opérateur égal à == vérifie si deux valeurs sont égales ou non. En cas d’égalité, il renvoie true; sinon, il renvoie false.

L’opérateur d’affectation = attribue la valeur de l’expression de droite à l’opérande de gauche.

 

 
 

9. Quelle est la différence entre une boucle while et une boucle do-while?
La boucle While

La boucle while vérifie la condition; si elle est vraie, alors elle parcourt la boucle jusqu’à ce que la condition devienne false.

while(condition)
{
   //corps de la boucle
}

Si la condition est false dans une boucle while, aucune instruction ne sera exécutée à l’intérieur de la boucle.
 

La boucle Do-while

La boucle do-while parcourt d’abord une fois le corps de la boucle, puis elle vérifie la condition.

do{
   //corps de la boucle
} while(condition);

Si la condition dans une boucle do-while est false, le corps s’exécutera également une fois.

 

 
 

10. Quelle est la différence entre delete [] et delete ?
« delete » est utilisé pour libérer une unité de mémoire, « delete[] » est utilisé pour libérer un tableau.

 

 

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *