Top 45 C ++ Interview Questions per u 2021

Quì sottu sò e dumande cumuni di intervista C ++ chì coprenu e dumande basiche di l'intervista c ++ è ancu e dumande avanzate di intervista c ++. Stu tutoriale copre ancu e dumande tecniche di intervista C ++ è dumande di intervista C ++ per sperimentati chì vi aiuteranu à preparà per interviste.

Table di cuntinutu

1. Chì hè C ++?

C ++ hè un superset di linguaghju di prugrammazione C chì supporta sia u linguaghju di prugrammazione procedurale sia ughjettu.

2. Chì sò i vantaghji di C ++?

  • Portable: Pò esecutà nantu à qualsiasi piattaforma
  • Linguaghju di prugrammazione orientatu à l'ughjettu: Supporta classi, oggetti, polimorfisimu, sovraccaricu, eredità, ecc
  • Ocultazione di dati: prutegge i dati da l'invasori
  • Passaghju di u messaghju: Facilita a cumunicazione trà l'ogetti

3. Chì sò e sferenze trà C è C ++?

CC ++
Sviluppatu da Dennis RitchieSviluppatu da Bjarne Stroustrup
Lingua di prugrammazione strutturataSupporta u linguaghju di programmazione sia strutturatu sia orientatu à l'ughjettu
Hè un sottogruppu di C ++Hè un superset di C
Ùn supporta micca l'ocultazione di i datiSupporta a nasconda di dati
Ùn supporta micca a sovraccarica di funzioni o l'operatoreSupporta a funzione è u soprascrivimentu di l'operatore
Ùn supporta micca e variabili di riferenzaSupporta variabili di riferimentu
Utilizza scanf () è printf () cum'è input è output standardUtilizza cin è cout cum'è input è output standard
Ùn pò micca implementà funzioni in una strutturaPò implementà funzioni in una struttura

4. Chì hè una classa?

Una classe definisce u struttura di dati. In altre parolle, rapprisenta ancu una definita da l'utilizatore tipo di dati chì hè specificatu aduprendu a parola chiave di classe. Cuntene funzioni è membri chì pudemu accede cù l'ughjettu o l'istanza di una classe. Per esempiu, pudemu avè una classe Employee chì hà EmpName, EmpId cum'è membri, è getName () è setName () cume funzioni. Pudemu creà più istanze per una sola classe.

5. Chì hè un ogettu?

Un oggettu hè un esempiu di una classe chì hà un statu è un comportamentu. Pudemu aduprà oggetti per funzioni d'accessu è membri di una classa. Ogni volta chì creemu un oggettu, hè attribuisce memoria o spaziu di almacenamentu secondu cumu a creemu.

6. Chì sò e varie caratteristiche o cuncetti di OOP?

Quì sottu sò e caratteristiche o cuncetti di OOP:

  • Scola
  • Objettivu
  • làscita
  • Incapsulamentu
  • curriculum
  • Ubligatoriu di i dati
  • Polimorfisimu

7. Chì sò i sfarenti tippi di dati in C ++?

Quì sottu sò i sfarenti tipi di dati in C ++:

  • Predefinitu tippi di dati: int, char, float, è doppiu
  • Tipi di dati definiti da l'utente: Matrici, puntatori, corde è strutture

8. Chì sò i sfarenti tippi di classi di almacenamentu in C ++?

I diversi tippi di classi di conservazione sò:

  • Luca Dirisio
  • Register
  • statica
  • External
  • Mutabile

9. Chì sò i gettoni in C ++?

Un token hè una piccula parte di u prugramma. Quì sottu sò i sfarenti tippi di token dispunibili in C ++:

  • Strings
  • Identificatori
  • Segni
  • Custanti
  • uperatori

10. C ++ hà una raccolta automatica di spazzatura?

Innò, C ++ ùn supporta micca a raccolta automatica di spazzatura.

11. Chì sò i sfarenti tippi di polimorfisimu in C ++?

Ci hè 2 tippi di polimorfisimu:

  • Polimorfisimu in tempu di compilazione: Chjamatu ancu polimorfisimu staticu induve a chjama à a funzione hè determinata à u tempu di compilazione
  • Polimorfisimu di runtime: Chjamatu dinò polimorfisimu dinamicu induve a chjama à a funzione hè determinata à u runtime.

12. Cume hè implementata Late Binding in C ++?

Usendu Virtual tavule

13. Chì hè u spaziu di nome in C ++?

Un spaziu di nomi hè un pezzu di codice chì adupremu per eliminà u cunflittu di nome è l'ambiguità in nomi variabili. Questu hè utile quandu avemu u listessu nome variabile per funzioni diverse. Usendu u spaziu di nomi, pudemu caccià st'ambiguità. Pudemu definisce u namespace cum'è quì sottu:

namespace name {
//body
}

Pudemu accede à u nome di a variàbile aduprendu u nome di u spaziu di nomi cum'è quì sottu:

namespace_name :: variable_name;

14. Chì sò e diverse operazioni permesse nantu à i puntatori?

Ci sò 2 operazioni sfarenti chì i puntatori sustenenu:

  • Puntatori di incrementu - Contene puntatori di preincrementu è di postincrementu
  • Puntatori di diminuzione

15. Chì ci hè a differenza trà delete [] è delete?

delete [] rilascia un array è delete rilascia una memoria

16. Chì sò i sfarenti specificatori d'accessu C ++?

I sfarenti specificatori d'accessu in C ++ sò:

  • privatu: Scopu è accessu in a listessa classa
  • publicu: Scopu è accessu da ogni locu
  • prutettu: Scopu è accessu in a listessa classa è classa zitellu

17. Chì ghjè una funzione amica?

Una funzione amica hè una funzione non membru chì aiuta à accede à i dati privati ​​è prutetti. Sta funzione ùn face micca parte di a classa ma deve esse dichjarata in a classa per ch'ellu possi accede à i dati privati. Generalmente, e funzioni chì ùn sò micca membri ùn ponu micca accede à i dati privati, ma ci sò situazioni quandu ci vole à fà. In questu casu, a funzione amica serà utile.

18. Cosa hè una funzione virtuale?

Una funzione virtuale hè una funzione membru chì aiuta à ridefinisce l'implementazione in a classe derivata. Quandu duie funzioni di u listessu nome sò prisenti in a classa di basa è derivata, a funzione di classa di basa serà dichjarata cù a parolla chjave virtuale. Dunque e duie classi ponu avè u listessu nome di funzione cù una implementazione diversa. Durante u runtime, determina quale funzione chjamà basatu annantu à u puntatore d'oggettu chì punta.

19. Chì hè un distruttore?

Un distruttore elimina e risorse una volta chì l'ughjettu hè fora di portata. Hà u listessu nome chè u nome di a classa è hè riprisentatu da una tilde '~'. Ùn hà micca valore o argumenti di ritornu.

20. Chì hè un errore di overflow?

Un errore di overflow hè un tipu d'errore Aritmeticu chì si verifica quandu richiede più spaziu di u spaziu dispunibule propiu.

21. Chì hè a sovraccarica?

A sovraccarica si faci quandu u listessu oggettu o funzione hà u listessu nome ma un'implementazione diversa. Ci hè 2 tippi di sovraccaricu: sovraccaricamentu di funzioni è sovraccaricu di l'operatore.

22. Chì ghjè a funzione chì supranava?

A supranzione di funzione hè u prucessu in quale a classa derivata furnisce una implementazione diversa di a stessa funzione chì hè presente in a classa di basa. A funzione di classe derivata annulla a funzione di classe di basa.

23. Chì hè l'eredità virtuale?

L'eredità virtuale hè una tecnica in a quale pudemu creà una sola copia di l'ughjettu di a classa di basa ancu s'ellu hè prisente in altre classi di a ierarchia. Questu hè principalmente utile in eredità Multipla.

24. Chì hè un custruttore?

Un costruttore aiuta à creà è inizializà novi oggetti o valori chì pudemu aduprà in una classe. Un costruttore hà u listessu nome chè u nome di a classa.

25. Chì hè un puntatore?

Un puntatore hè una variabile chì memorizza l'indirizzu di un'altra variabile. Pò esse adupratu per indicà variabili di qualsiasi tipu di dati cum'è int o char, ecc

26. Cosa hè un operatore di risoluzione di portata?

Un operatore di risoluzione di scopu permette di definisce a funzione membru fora di a classe. Hè rapprisentatu da ::

27. Cosa hè una funzione virtuale pura?

Una funzione virtuale pura hè un tipu di funzione virtuale chì ùn cuntene alcuna definizione di funzione. Hè dichjaratu cù u valore 0.

virtual void function_name()=0;

28. Chì differenza ci hè trà una struct è una classe?

struttuburghisìa
Una struct hè un tipu di dati definitu da l'utente chì detiene valori di diversi tipi di datiUna classe hè un tippu di dati definitu da l'utente chì cuntene membri è funzioni
E variabili sò conservate in memoria di pilaE variabili sò conservate in memoria di mucchio
Ùn pudemu micca inizializà variabili direttamentePudemu inizializà variabili direttamente
U specificatore di accessu predefinitu di una variabile hè publicuU specificatore di accessu predefinitu di una variabile hè privatu
Utilizza a parola chiave structUtilizza a parolla chjave di classa
Ùn supporta micca l'ereditàSupporta l'eredità
U tippu di struttura hè di tippu di valoreU tippu di classe hè di tippu di riferenza.

29. Cosa hè un distruttore virtuale?

Un distruttore virtuale hè adupratu per distrugge l'oggetti di a classe derivata da a classa di basa. Pudemu avè distruttori virtuali ma micca costruttori. Un distruttore virtuale hè rappresentatu da una tilde (~) prima di u virtual parola chjave.

30. Scrivi un prugramma C ++ per stampà Hello world

#include <iostream>

using namespace std;

int main()
{
    cout<<"Hello World";

    return 0;
}

31. Scrivi un prugramma C ++ per entre una stringa è truvà a so lunghezza

#include<iostream>
#include<conio.h>
#include<string.h>

using namespace std;

int main()
{
    char s[20];
    int length;
    cout<< "Enter a string: " <<endl;
    cin>>s;
    length = strlen(s);
    cout<<"The length of the string is: " <<length;
    return 0;
}
Enter a string:                                                                                                                               
tutorial                                                                                                                                      
The length of the string is: 8

32. Chì hè questu puntatore?

this u puntatore hè una variabile chì detiene l'indirizzu di a variabile attuale o di l'ughjettu.

33. Qual hè a differenza trà u sovraccaricu di funzioni è u sovraccaricu di l'operatore?

A sovraccaricazione di funzioni hè una tecnica in a quale a stessa funzione hà un tippu è un numeru sfarenti di argumenti ma hà u listessu nome di funzione mentre chì u sovraccaricu di l'operatore utilizza u listessu operatore chì hà una implementazione o una funzionalità differente.

34. Chì hè un membru staticu in C ++?

Un membru staticu hè rapprisentatu aduprendu a parolla chjave statica è attribuisce memoria solu una volta. Ùn pudemu micca dichjarà una funzione di membru staticu cum'è Virtual è ùn pò cuntene stu puntatore.

35. Chì hè una variabile di riferenza?

Una variabile di riferenza aiuta à aghjurnà o cambià u valore di a variabile originale. Sparte a stessa memoria cum'è a variabile originale.

36. Cosa hè un costruttore di copia?

A custruttore di copia hè una funzione membru chì initializza l'ughjettu aduprendu un altru ogettu di a listessa classa.

37. C ++ supporta a String cum'è tippu di dati primitivi?

Innò, C ++ ùn sustene micca a String cum'è primitiva tipo di dati.

38. Chì hè un prublema di diamanti è induve si verifica?

Un prublema di diamanti si verifica in Eredità multipla induve hè incapace di sustene l'eredità ibrida aduprendu eredità multipla è eredità gerarchica.

39. Cosa hè una funzione in linea?

Una funzione in linea hè una funzione induve u compilatore compila solu à u mumentu di chjamà a funzione. A funzione prucede cù a parolla chjave in linea.

40. Chì ghjè l'usu di una parola chiave volatile?

Una parolla chjave volatile evita l'ottimisazione di u compilatore dirigendu u compilatore chì a variabile pò esse cambiata esternamente.

41. Definisce passa per valore è passa per riferenza

Passà per valore denota passà un valore cum'è parametru à a funzione è dunque ùn influenza micca a variabile originale mentre chì passà per riferenza significa passà a riferenza di a variabile cambiendu cusì u valore di variabile originale.

42. Chì hè una parolla chjave automatica?

Una parolla chjave automatica si riferisce à e variabili lucali per difettu induve e variabili sò create automaticamente. Queste variabili sò conservate in a memoria di stack.

43. Chì sò i sfarenti tippi di cicli in C ++?

Quì sottu sò i diversi tipi di cicli:

  • mentre ciclu
  • per ciclu
  • ciclu do-while

44. Chì hè una classa astratta?

Una classa astratta hè una classe chì cuntene almenu una funzione virtuale pura induve cuntene solu a dichjarazione di funzione è ùn cuntene micca una definizione di funzione.

45. Cosa hè un costruttore predefinitu?

Un costruttore predefinitu hè un costruttore chì u compilatore crea automaticamente è ùn hà micca argumenti.

 

Translate »