Introduction aux questions et réponses d'entrevue C ++

C ++ est appelé langage de niveau intermédiaire, c'est la combinaison des fonctionnalités des langages de programmation de haut niveau et de bas niveau. Il a été développé par Bjarne Stroustrup en 1979. Il est également appelé langage de programmation orienté objet. Il est compilé, sensible à la casse et typé statiquement.

Préparation à un entretien d'embauche en C ++. Je suis sûr que vous voulez connaître les questions et réponses d'entrevue C ++ 2019 les plus courantes qui vous aideront à déchiffrer facilement l'entrevue C ++.

Jetons un coup d'œil aux questions d'entrevue C ++ 2019 qui sont posées lors des entretiens. Ces questions sont divisées en deux parties:

Partie 1 - Questions d'entrevue C ++ (de base)

Cette première partie couvre les questions et réponses d'entrevue de base en C ++

1. Définir la classe?

Répondre:
La classe spécifie généralement la structure des données. Il peut être défini comme le plan directeur qui décrit les états des types pris en charge. Par exemple, les détails de l'élève dans la classe étudiante comme l'âge, le nom, l'adresse, etc. de l'élève dans un bloc qui est la classe.

2. Définir un objet?

Répondre:
Ce sont les questions d'entrevue de base C ++ qui sont posées dans une interview. Un objet est l'instance d'une classe et il peut avoir des états et un comportement. Une fois qu'un objet a été créé en classe, vous pouvez facilement accéder aux membres définis de cette classe à l'aide d'un objet.

3. Expliquez les caractéristiques ou les concepts de la programmation orientée objet (POO)?

Répondre:
Les fonctionnalités ou concepts de la POO sont les suivants:

  • Abstraction
  • Encapsulation
  • Héritage
  • Polymorphisme

Abstraction: il est utilisé pour masquer les implémentations internes et n'affiche que les détails requis pour l'utilisateur. L'abstraction peut être implémentée à l'aide d'une classe abstraite ou d'une interface. Par exemple, calculatrice. Dans la calculatrice, il affiche uniquement la sortie quelle que soit l'entrée donnée. Comment les calculs sont effectués, ce n'est pas un détail nécessaire pour l'utilisateur.

Encapsulation: elle est appelée masquage des données. Il s'agit d'un mécanisme qui lie les données et les opérations entre elles et masque ces détails à l'utilisateur. L'encapsulation peut être réalisée à l'aide de spécificateurs d'accès qui sont publics, privés et protégés en C ++. Avec leur aide, nous pouvons fournir un accès ou empêcher l'accès directement à un utilisateur.

Héritage: Il s'agit d'un processus de création de nouvelles classes à partir de classes existantes. Cela signifie hériter des propriétés de la classe parent par la classe enfant. La classe parente est également appelée classe de base et la classe enfant est également appelée classe dérivée. L'héritage est principalement utilisé pour la réutilisation du code et pour étendre les classes parentes.

Polymorphisme: il se réfère à de nombreuses formes. Il décrit principalement que lorsqu'une fonction membre est appelée, elle exécutera les différentes fonctions en fonction du type d'objet à invoquer.

4. Quels sont les spécificateurs d'accès en C ++?

Répondre:
Dans un langage orienté objet, les spécificateurs d'accès sont appelés les mots clés utilisés pour définir l'accessibilité des classes, fonctions, méthodes et autres membres. Il n'y a que 3 spécificateurs d'accès pour C ++ qui sont: 1. Public 2. Privé 3. Protégé

  • Public: les membres ou champs déclarés publics sont également accessibles en dehors de la classe.
  • Privé: les membres ou champs déclarés privés ne sont pas accessibles en dehors de la classe. Ils ne sont accessibles qu'à l'intérieur de la classe.
  • Protégé: les membres ou champs déclarés protégés sont accessibles en dehors de la classe, mais uniquement dans une classe dérivée de cette classe.

Passons aux prochaines questions d'entrevue C ++.

5. Quelle est la différence entre la classe abstraite et l'interface?

Répondre:
Les différences entre les deux sont les suivantes:

S.No.Classe abstraiteInterface
1Il peut avoir une méthode d'instance et peut avoir une implémentation.Il est implicitement abstrait et ne peut avoir aucun état ou implémentation.
2Il peut étendre d'autres classes et plusieurs interfaces.Il ne peut étendre l'interface que.
3Il ne peut pas être instancié.Elle est absolument abstraite et ne peut être instanciée.
4Les membres peuvent être déclarés publics, privés ou protégés.Les membres sont publics par défaut.
5Classe abstraite appelée rapide.C'est relativement lent.
6Les variables ou les champs peuvent être déclarés comme non définitifsLes variables ou champs sont définitifs

Partie 2 - Questions d'entrevue C ++ (avancé)

Jetons maintenant un coup d'œil aux questions d'entrevue C ++ avancées.

6. Qu'est-ce que l'héritage et expliquez ses types?

Répondre:
L'héritage expliqué plus tôt, veuillez vérifier la question no. 2. Il existe différents types d'héritage:

  • Héritage unique: il se réfère à l'héritage lorsqu'il n'y a qu'une seule classe parent et classe enfant.
  • Héritage multiple: il fait référence à l'héritage lorsqu'une classe dérivée hérite des propriétés de deux ou plusieurs classes.
  • Héritage à plusieurs niveaux: il se réfère à l'héritage lorsque la classe dérivée est la classe de base pour une autre classe.
  • Héritage hiérarchique: il fait référence à l'héritage lorsque plusieurs classes dérivées héritent des propriétés de la même classe de base.
  • Héritage hybride: il s'agit de l'héritage virtuel. Il s'agit d'une combinaison d'héritage multiniveau et hiérarchique.

7. Quels sont les types de données et les variables en C ++?

Répondre:
Les types de données sont utilisés pour définir le type de variable et en conséquence, le système d'exploitation alloue l'espace mémoire et ce qui peut être stocké. Les variables sont déclarées pour lesquelles la valeur sera affectée et lors de la déclaration, elle réserve l'espace mémoire pour contenir les valeurs. Par exemple, int X, dans cet exemple, «int» est le type de données et «X» est variable. Certains exemples de types de données sont int, char, float, long, bool, double, void.

Passons aux prochaines questions d'entrevue C ++

8. Qu'est-ce que le constructeur et le destructeur en C ++?

Répondre:
Le constructeur a été exécuté lors de la création des nouveaux objets de la classe. Il aura exactement le même nom que le nom de la classe. Un constructeur peut être le constructeur par défaut, ce qui n'est pas obligatoire de le mentionner et il n'a aucun paramètre. Un constructeur peut être un constructeur paramétré que nous devons mentionner ou déclarer dans la classe et les paramètres doivent être initialisés.
Destructor a été exécuté lorsque les objets d'une classe ne sont pas dans la portée ou qu'elle n'est plus utilisée. Il aura le même nom exactement que le nom de la classe mais devrait être préfixé avec le signe (~). Il est principalement utilisé pour libérer les ressources comme une fermeture de fichiers, etc.

9. Quelles sont les fonctions virtuelles en C ++?

Répondre:
Ce sont les questions d'entrevue C ++ avancées qui sont posées dans une interview. Il est principalement utilisé pour remplacer l'implémentation de la classe parente. Ce sont les fonctions qui sont déclarées en classe avec le mot-clé 'virtuel'. Lorsque la référence de type de classe parent est initialisée avec un objet de type classe enfant et que la méthode remplacée (déclarée virtuelle) est invoquée à l'aide de la référence de classe parent, la méthode de classe enfant sera invoquée.

10.Différence entre C et C ++?

Répondre:

S.No. C C ++
1.C'est une programmation procédurale.Il est également orienté objet.
2.Il suit l'approche descendante.Suit une approche ascendante.
3.Il ne prend pas en charge les variables de référencePrend en charge les variables de référence
4.En C, les données sont moins sécurisées.Plus sécurisé comparativement.
5.Scanf () et printf () sont utilisés pour l'entrée et la sortiecin et cout sont utilisés pour la même chose.
6.Impossible d'utiliser des fonctions dans la structure.Peut utiliser des fonctions dans la structure.

Article recommandé

Ceci a été un guide pour la liste des questions et réponses d'entrevue C ++ afin que le candidat puisse réprimer facilement ces questions d'entrevue C ++. Vous pouvez également consulter les articles suivants pour en savoir plus -

  1. Quelles sont les questions d'entrevue Windows?
  2. Questions d'entretiens chez Advance SQL
  3. 10 questions d'entrevue utiles sur Windows Server
  4. Meilleur guide sur Jenkins vs Bamboo
  5. Jenkins vs Travis CI: Caractéristiques
  6. Jenkins vs TeamCity: guide étonnant
  7. C ++ Vector vs Array: Que savoir qui est le meilleur
  8. Guide du constructeur et du destructeur en C ++