top 70 c interview questions
Najpogostejša osnovna in napredna C ++ intervjujska vprašanja s primeri kod za kandidate na začetni stopnji in izkušene strokovnjake:
Ta podroben članek bo zagotovo zaznamek za tiste, ki se pripravljajo na intervju za C ++.
Tu so zajete skoraj vse glavne teme v jeziku C ++, skupaj z nekaterimi osnovnimi vprašanji o naprednih temah, kot je knjižnica standardnih predlog (STL) itd.
Ta sklop vprašanj o kodiranju C ++ vam bo pomagal samozavestno se soočiti s katerim koli intervjujem C ++ in ga že ob prvem poskusu uspešno počistiti.
Kaj se boste naučili:
- C ++ Vprašanja za intervjuje s primeri kode
C ++ Vprašanja za intervjuje s primeri kode
Spodaj so navedena najbolj priljubljena vprašanja o programiranju za C ++, na katera odgovarja strokovnjak za C ++.
Preberite tudi => Vprašanja za intervju za programiranje C
Osnovni C ++
Struktura programa C ++
V # 1) Kakšna je osnovna struktura programa C ++?
Odgovor: Osnovna struktura programa C ++ je prikazana spodaj:
#include int main() { cout<<”Hello,World!”; return 0; }
Prva vrstica, ki se začne z » # ' je predprocesorska direktiva . V tem primeru uporabljamo vključujejo kot direktiva, ki prevajalniku sporoča, naj vključi glavo, medtem ko ' iostream.h ”, Ki bo uporabljen za osnovni vhod / izhod kasneje v programu.
Naslednja vrstica je funkcija 'main', ki vrne celo število. Glavna funkcija je izhodišče za izvajanje katerega koli programa C ++. Ne glede na njen položaj v datoteki izvorne kode, vsebino glavne funkcije vedno najprej izvede prevajalnik C ++.
V naslednji vrstici lahko vidimo odprte zavite oklepaje, ki označujejo začetek bloka kode. Po tem vidimo programsko navodilo ali vrstico kode, ki uporablja števec, ki je standardni izhodni tok (njegova definicija je prisotna v iostream.h).
Ta izhodni tok vzame niz znakov in ga natisne v standardno izhodno napravo. V tem primeru je: 'Pozdravljen, svet!'. Upoštevajte, da se vsako navodilo za C ++ konča s podpičjem (;), kar je zelo potrebno, če ga izpustite, pa bo prišlo do napak pri prevajanju.
Preden zapremo oklepaje}, vidimo še vrstico »return 0;«. To je vrnitev na glavno funkcijo.
Vsak program C ++ bo imel osnovno strukturo, kot je prikazano zgoraj, z direktivo predprocesorja, izjavo glavne funkcije, ki ji sledi blok kode in nato vrnitveno točko v glavno funkcijo, ki označuje uspešno izvajanje programa.
V # 2) Kakšni so komentarji v jeziku C ++?
Odgovor: Komentarji v jeziku C ++ so preprosto del izvorne kode, ki ga prevajalnik prezre. Programerju je v pomoč le, če doda opis ali dodatne informacije o svoji izvorni kodi.
V C ++ lahko komentarje dodate na dva načina:
- // enovrstični komentar
- / * blokiraj komentar * /
Prva vrsta bo zavrgla vse, ko bo prevajalnik naletel na '//'. Pri drugi vrsti prevajalnik zavrže vse med “/ *” in “* /”.
Spremenljivke, vrste podatkov in konstante
V # 3) Razlika med izjavo in definicijo spremenljivke.
Odgovor: Izjava spremenljivke zgolj določa podatkovni tip spremenljivke in ime spremenljivke. Kot rezultat izjave povemo prevajalniku, naj si rezervira prostor za spremenljivko v pomnilniku glede na določen tip podatkov.
Primer:
int Result; char c; int a,b,c;
Vse navedeno so veljavne izjave. Upoštevajte tudi, da kot rezultat izjave vrednost spremenljivke ni določena.
Medtem ko je definicija izvedba / instanca deklarirane spremenljivke, kjer na deklarirano spremenljivko vežemo ustrezno vrednost, tako da bo povezovalnik lahko povezal sklice na ustrezne entitete.
Zgoraj Primer ,
Rezultat = 10;
C = 'A';
To so veljavne definicije.
V # 4) Komentirajte lokalni in globalni obseg spremenljivke.
Odgovor: Obseg spremenljivke je opredeljen kot obseg programske kode, znotraj katere spremenljivka ostane aktivna, tj. Z njo je mogoče deklarirati, definirati ali delati.
V C ++ obstajata dve vrsti področja uporabe:
- Lokalni obseg: Pravi se, da ima spremenljivka lokalno področje uporabe ali pa je lokalna, ko je navedena v bloku kode. Spremenljivka ostane aktivna samo znotraj bloka in ni dostopna zunaj bloka kode.
- Globalni obseg: Spremenljivka ima globalni obseg, kadar je dostopna v celotnem programu. Globalna spremenljivka je razglašena na vrhu programa pred vsemi definicijami funkcij.
Primer:
#include Int globalResult=0; //global variable int main() { Int localVar = 10; //local variable. ….. }
V # 5) Kakšna je prednost, če sta v programu isto spremenljivka Global in Local spremenljivka?
Odgovor: Kadar obstaja lokalna spremenljivka z enakim imenom kot globalna spremenljivka, daje prevajalnik prednost lokalni spremenljivki.
Primer:
#include int globalVar = 2; int main() { int globalVar = 5; cout<Rezultat zgornje kode je 5. To je zato, ker imata obe spremenljivki isto ime, vendar je prevajalnik dal prednost lokalnemu obsegu.
V # 6) Če obstajata spremenljivka Global in Local z istim imenom, kako boste dostopali do globalne spremenljivke?
Odgovor: Če sta dve spremenljivki z istim imenom, vendar različnim obsegom, tj. Ena je lokalna spremenljivka, druga pa globalna spremenljivka, bo prevajalnik dal prednost lokalni spremenljivki.
Za dostop do globalne spremenljivke uporabljamo “ operater ločljivosti obsega (: :) '. S tem operaterjem lahko dostopamo do vrednosti globalne spremenljivke.
Primer:
#include int x= 10; int main() { int x= 2; cout<<”Global Variable x = “<<::x; cout<<”
local Variable x= “< Izhod:
Globalna spremenljivka x = 10
lokalna spremenljivka x = 2
V # 7) Koliko načinov je za inicializiranje int s konstanto?
Odgovor: Obstajata dva načina:
- Prva oblika uporablja tradicionalni zapis C.
int rezultat = 10; - Druga oblika uporablja zapis konstruktorja.
int rezultat (10);
Konstante
V # 8) Kaj je konstanta? Pojasnite s primerom.
Odgovor: Konstanta je izraz, ki ima fiksno vrednost. Razdelimo jih lahko na celoštevilčne, decimalne, konstante s plavajočo vejico, znake ali nize, odvisno od njihove vrste podatkov.
Poleg decimalnih znakov C ++ podpira še dve konstanti, to je osminsko (na osnovo 8) in šestnajstiško (na osnovo 16) konstante.
Primeri konstant:
- 75 // celo število (decimalno)
- 0113 // osmica
- 0x4b // šestnajstiška
- 3.142 // s plavajočo vejico
- ‘C’ // znakovna konstanta
- 'Hello, World' // niz konstante
Opomba: Kadar moramo predstaviti en sam znak, uporabimo enojne narekovaje in kadar želimo definirati konstanto z več kot enim znakom, uporabimo dvojne narekovaje.
V # 9) Kako v C ++ definirate / razglasite konstante?
Odgovor: V jeziku C ++ lahko določimo lastne konstante z uporabo #define predprocesorska direktiva.
#define Identifikator vrednost
Primer:
#include #define PI 3.142 int main () { float radius =5, area; area = PI * r * r; cout<<”Area of a Circle = “< Izhod: Površina kroga = 78,55
Kot je prikazano v zgornjem primeru, ko definiramo konstanto z uporabo direktive #define, jo lahko uporabimo v celotnem programu in nadomestimo njeno vrednost.
Konstante v C ++ lahko razglasimo z uporabo ' const 'Ključna beseda. Ta način je podoben načinu razglasitve spremenljivke, vendar s predpono const.
Primeri razglasitve konstante
const int pi = 3,142;
const char c = 'sth';
const poštna številka = 411014;
V zgornjih primerih, kadar tip konstante ni določen, ga prevajalnik C ++ privzeto pripiše celoštevilskemu tipu.
Operaterji
V # 10) Komentar operaterja dodelitve v jeziku C ++.
Odgovor: Operator dodelitve v jeziku C ++ se uporablja za dodelitev vrednosti drugi spremenljivki.
a = 5;
Ta vrstica kode dodeli celoštevilčno vrednost 5. na spremenljivko do .
Del na levi strani operatorja = je znan kot Vrednost (leva vrednost) in desna kot rvalue (desna vrednost). L vrednost mora biti vedno spremenljivka, medtem ko je desna stran lahko konstanta, spremenljivka, rezultat operacije ali katera koli njihova kombinacija.
Operacija dodelitve vedno poteka od desne proti levi in nikoli v obratni smeri.
Ena lastnost, ki jo ima C ++ nad drugimi programskimi jeziki, je ta, da je operater dodelitve mogoče uporabiti kot rvalue (ali del rvalue ) za drugo nalogo.
Primer:
a = 2 + (b = 5);
je enakovredno:
b = 5;
a = 2 + b;
Kar pomeni, najprej dodeli 5. na spremenljivko b in nato dodeli do, vrednost dva plus rezultat prejšnjega izraza b (to je 5), listi do s končno vrednostjo 7. .
Tako je v jeziku C ++ veljaven tudi naslednji izraz:
a = b = c = 5;
spremenljivkam dodelite 5 do , b in c .
V # 11) Kakšna je razlika med enakim (==) in operaterju dodelitve (=)?
Odgovor: V jeziku C ++ sta enaka (==) in operator dodelitve (=) dva popolnoma različna operaterja.
Enako (==) je relacijski operator za enakost, ki izračuna dva izraza, da ugotovi, ali sta enaka, in vrne true, če sta enaka, in false, če ne.
Operator dodelitve (=) se uporablja za dodelitev vrednosti spremenljivki. Zato imamo lahko znotraj evalcijskega relacijskega operaterja za ocenjevanje zapleteno operacijo dodelitve.
V # 12) Kateri so različni aritmetični operaterji v jeziku C ++?
Odgovor: C ++ podpira naslednje aritmetične operatorje:
- + dodatek
- - odštevanje
- * množenje
- / delitev
- % modul
Pokažimo različne aritmetične operatorje z naslednjim delom kode.
Primer:
#include int main () { int a=5, b=3; cout<<”a + b = “< Izhod :
a + b = 8
a - b = 2
a * b = 15
a / b = 2
a% b = 1
Kot je prikazano zgoraj, so vse druge operacije enostavne in enake dejanskim aritmetičnim operacijam, razen modulskega operaterja, ki je precej drugačen. Operater Modulo deli a in b, rezultat operacije pa je preostanek delitve.
V # 13) Kateri so različni operaterji sestavljene dodelitve v jeziku C ++?
Odgovor: Sledijo sestavljeni operaterji dodelitve v jeziku C ++:
+ =, - =, * =, / =,% =, >> =,<<=, &=, ^=,|=
Operater sestavljene dodelitve je ena najpomembnejših lastnosti jezika C ++, ki nam omogoča spreminjanje vrednosti spremenljivke z enim od osnovnih operaterjev:
Primer:
value += increase; is equivalent to value = value + increase; if base_salary is a variable of type int. int base_salary = 1000; base_salary += 1000; #base_salary = base_salary + 1000 base_salary *= 5; #base_salary = base_salary * 5;
V # 14) Navedite razliko med operacijami povečanja / zmanjšanja pred in po porabi.
Odgovor: C ++ omogoča dva operatorja, tj. ++ (prirastek) in - (prirastek), ki vam omogočata, da obstoječi vrednosti spremenljivke dodate 1 in od spremenljivke odštejete 1. Ti operaterji se po vrsti imenujejo prirast (++) in pomanjšanje (-).
Primer:
a = 5;
a ++;
Drugi stavek, ++, bo povzročil, da se vrednosti 1 doda vrednost 1. Tako je ++ enakovredno
a = a + 1; ali
a + = 1;
Edinstvena značilnost teh operaterjev je, da lahko pred spremenljivko predpone ali pripone uporabimo. Torej, če je a spremenljivka in predpona operatorja prirastka, bo
++ a;
To se imenuje predhodni prirastek. Podobno imamo tudi predhodno zmanjšanje.
Če pred spremenljivko a vstavimo predpono z operatorjem prirastka, bomo imeli,
a ++;
To je povišanje. Podobno imamo tudi po zmanjšanju.
Razlika med pomenom pred in post je odvisna od tega, kako se izraz oceni in shrani rezultat.
V primeru operatorja predhodnega prirastka / zmanjšanja se najprej izvede postopek prirastka / zmanjšanja, nato pa se rezultat prenese na vrednost lvalue. Medtem ko se pri operacijah po prirastku / zmanjšanju najprej oceni vrednost l, nato pa ustrezno izvede prirastek / zmanjšanje.
Primer:
a = 5; b = 6;
++ a; # a = 6
b–; # b = 6
–A; # a = 5
b ++; # 6
V / I prek konzole
V # 15) Kaj so operaterji ekstrakcije in vstavljanja v jeziku C ++? Pojasnite s primeri.
Odgovor: V knjižnici iostream.h v C ++, Kitajska , in stroškov sta dva podatkovna toka, ki se uporabljata za vhod oziroma izhod. Cout je običajno usmerjen na zaslon, cin pa na tipkovnici.
'Cin' (operater ekstrakcije): Z uporabo preobremenjenega operatorja >> s cin streamom C ++ obdeluje standardni vhod.
int age; cin>>age;
Kot je prikazano v zgornjem primeru, je navedena celoštevilčna spremenljivka 'starost', ki nato čaka, da podatke vnese cin (tipkovnica). “Cin” obdela vhod samo, ko pritisnete tipko RETURN.
'Cout' (operator vstavljanja): To se uporablja skupaj s preobremenjenimi<< operator. It directs the data that followed it into the cout stream.
Primer:
kaj je preverjanje in potrjevanje pri testiranju programske opreme
cout<<”Hello, World!”; cout<<123;
Nadzorne strukture in funkcije
Nadzorne strukture in zanke
V # 16) Kakšna je razlika med zanko while in do while? Pojasnite s primeri.
Odgovor: Oblika zanke while v jeziku C ++ je:
Medtem ko (izraz)
{izjave;}
Blok stavka pod while se izvaja, dokler je pogoj v danem izrazu resničen.
Primer:
#include int main() { int n; cout<>n; while(n>0) { cout<<” “<V zgornji kodi bo zanka neposredno izstopila, če je n 0. Tako je v zanki while zaključni pogoj na začetku zanke in če je izpolnjena, se ponovitve zanke ne izvedejo.
Nato upoštevamo zanko do-while.
Splošna oblika dela med izvajanjem je:
do {statement;} while (stanje);
Primer:
#include int main() { int n; cout<>n; do { cout<V zgornji kodi lahko vidimo, da se stavek znotraj zanke izvede vsaj enkrat, saj je stanje zanke na koncu. To so glavne razlike med časoma in časom.
V primeru zanke while lahko zanko neposredno zapustimo na začetku, če pogoj ni izpolnjen, medtem ko v zanki do-while vsaj enkrat izvedemo stavke zanke.
Funkcije
V # 17) Kaj mislite z vrnitvijo »void«?
Odgovor: Vse funkcije morajo vrniti vrednost v skladu s splošno sintakso.
Če pa ne želimo, da funkcija vrne katero koli vrednost, uporabimo » praznino ', Da to označi. To pomeni, da uporabljamo praznino ', Ki označuje, da funkcija nima vrnjene vrednosti ali vrne' praznino '.
Primer:
void myfunc() { Cout<<”Hello,This is my function!!”; } int main() { myfunc(); return 0; }
V # 18) Pojasnite Pass by Value in Pass by Reference.
Odgovor: Medtem ko parametre posredujemo funkciji s funkcijo »Pass by Value«, ji posredujemo kopijo parametrov.
Zato se kakršne koli spremembe parametrov v klicani funkciji ne prenesejo nazaj na klicno funkcijo. Tako spremenljivke v klicni funkciji ostanejo nespremenjene.
Primer:
void printFunc(int a,int b,int c) { a *=2; b *=2; c *=2; } int main() { int x = 1,y=3,z=4; printFunc(x,y,z); cout<<”x = “< Izhod:
x = 1
y = 3
z = 4
Kot smo videli zgoraj, čeprav so bili parametri spremenjeni v klicani funkciji, se njihove vrednosti niso odražale v klicni funkciji, saj so bile posredovane po vrednosti.
Če pa želimo spremenjene vrednosti iz funkcije vrniti v klicno funkcijo, potem uporabimo tehniko »Pass by Reference«.
Da bi to dokazali, spremenimo zgornji program, kot sledi:
void printFunc(int& a,int& b,int& c) { a *=2; b *=2; c *=2; } int main() { int x = 1,y=3,z=4; printFunc(x,y,z); cout<<”x = “< Izhod:
x = 2
y = 6
z = 8
Kot je prikazano zgoraj, se spremembe parametrov v klicanih funkcijah posredujejo klicni funkciji, ko uporabimo tehniko »Prenesi referenco«. To je zato, ker z uporabo te tehnike ne posredujemo kopije parametrov, ampak dejansko posredujemo referenco spremenljivke.
V # 19) Kaj so privzeti parametri? Kako se ocenjujejo v funkciji C ++?
Odgovor: Privzeti parameter je vrednost, ki je dodeljena vsakemu parametru med razglasitvijo funkcije.
Ta vrednost se uporablja, če med klicanjem funkcije ta parameter ostane prazen. Če želite določiti privzeto vrednost za določen parameter, parametru preprosto dodelimo vrednost v izjavi funkcije.
Če se vrednost tega parametra med klicem funkcije ne posreduje, potem prevajalnik uporabi privzeto vrednost. Če je podana vrednost, se privzeto stopi in uporabi posredovana vrednost.
Primer:
int multiply(int a, int b=2) { int r; r = a * b; return r; } int main() { Cout< Izhod:
12.
6.
Kot je prikazano v zgornji kodi, obstajata dva klica funkcije množenja. V prvem klicu se z vrednostjo posreduje samo en parameter. V tem primeru je drugi parameter privzeta vrednost. Toda v drugem klicu, ko se posredujeta obe vrednosti parametrov, se privzeta vrednost preglasi in uporabi posredovana vrednost.
V # 20) Kaj je funkcija Inline v jeziku C ++?
Odgovor: Funkcija Inline je funkcija, ki jo prevajalnik prevede kot točko klica funkcije in na tej točki nadomesti kodo. Tako je sestavljanje hitrejše. Ta funkcija je definirana s predpono prototipa funkcije s ključno besedo 'inline'.
Takšne funkcije so koristne le, če je koda funkcije inline majhna in preprosta. Čeprav je funkcija definirana kot Inline, je v celoti odvisna od prevajalnika, če jo oceni kot vrstico ali ne.
Struktura naprednih podatkov
Polja
V # 21) Zakaj se polja običajno obdelujejo z zanko for?
Odgovor: Array uporablja indeks za prehod vsakega od njegovih elementov.
Če je A matrika, je vsak njen element dostopen kot A (i). Programsko je za to potrebno le ponovitveni blok s spremenljivo zanko i, ki služi kot indeks (števec), ki se poveča od 0 do A. dolžina-1.
To je točno tisto, kar počne zanka, in to je razlog, zakaj obdelujemo polja z zankami.
Q # 22) Navedite razliko med brisanjem in brisanjem ().
Odgovor: “Delete ()” se uporablja za sprostitev pomnilnika, dodeljenega matriki, ki je bila dodeljena z uporabo nove (). »Delete« se uporablja za sprostitev enega dela pomnilnika, ki je bil dodeljen z uporabo novega.
V # 23) Kaj je narobe s to kodo?
T * p = novi T (10);
izbriši p;
Odgovor: Zgornja koda je skladenjsko pravilna in se bo zbrala v redu.
Težava je le v tem, da bo samo izbrisal prvi element polja. Čeprav je celotno polje izbrisano, bo poklican le destruktor prvega elementa in sproščen bo pomnilnik prvega elementa.
V # 24) Kakšen je vrstni red uničenja predmetov v nizu?
Odgovor: Predmeti v matriki se uničijo v obratnem vrstnem redu konstrukcije: prvič zgrajeni, zadnji uničeni.
V naslednjem primeru, vrstni red destruktorjev bo (9), a (8),…, a (1), a (0):
voiduserCode() { Car a(10); ... }
Kazalci
V # 25) Kaj je narobe s to kodo?
T * p = 0;
izbriši p;
Odgovor: V zgornji kodi je kazalec ničelni kazalec. V skladu s standardom C ++ 03 je popolnoma veljavno, da pokličete delete na kazalcu NULL. Operator brisanja bi interno poskrbel za preverjanje NULL.
V # 26) Kaj je referenčna spremenljivka v jeziku C ++?
Odgovor: Referenčna spremenljivka je vzdevek imena obstoječe spremenljivke. To pomeni, da ime spremenljivke in referenčna spremenljivka usmerjata na isto mesto pomnilnika. Zato se vsakič, ko je spremenljivka posodobljena, posodobi tudi referenca.
Primer:
int a=10; int& b = a;
Tu je b sklic na a.
Razredi shranjevanja
V # 27) Kaj je razred shranjevanja? Omenite razrede shranjevanja v jeziku C ++.
Odgovor: Razred shranjevanja določa življenjsko dobo ali obseg simbolov, kot so spremenljivka ali funkcije.
C ++ podpira naslednje razrede pomnilnika:
- Samodejno
- Statično
- Zunanji
- Registrirajte se
- Spremenljivo
V # 28) Pojasnite specifikator razreda spremenljivega pomnilnika.
Odgovor: Spremenljivke člana predmeta konstantnega razreda ni mogoče spremeniti. Če pa spremenljivke razglasimo za »spremenljive«, lahko spremenimo vrednosti teh spremenljivk.
V # 29) Za kaj je ključna beseda auto?
Odgovor: Privzeto je vsaka lokalna spremenljivka funkcije samodejna, tj. samodejno . V spodnji funkciji sta spremenljivki 'i' in 'j' samodejni spremenljivki.
void f() { int i; auto int j; }
OPOMBA : Globalna spremenljivka ni samodejna spremenljivka.
V # 30) Kaj je statična spremenljivka?
Odgovor: Statična spremenljivka je lokalna spremenljivka, ki ohrani svojo vrednost med klici funkcije. Statične spremenljivke so navedene s ključno besedo 'static'. Numerične spremenljivke, ki so statične, imajo privzeto vrednost nič.
Naslednja funkcija bo natisnila 1 2 3, če jo pokličemo trikrat.
void f() { static int i; ++i; printf(“%d “,i); }
Če je globalna spremenljivka statična, je njena vidnost omejena na isto izvorno kodo.
V # 31) Kakšen je namen zunanjega specifikacijskega pomnilnika?
Odgovor: Specifikator 'Extern' se uporablja za razrešitev obsega globalnega simbola.
#include using nam espace std; main() { extern int i; cout< V zgornji kodi je lahko 'i' viden zunaj datoteke, kjer je definirana.
V # 32) Pojasnite specifiko registra za shranjevanje.
Odgovor: Spremenljivko „Register“ je treba uporabiti vsakič, ko se uporablja spremenljivka. Ko je spremenljivka deklarirana s specifikatorjem „register“, potem prevajalnik da CPU register za svoje shranjevanje, da pospeši iskanje spremenljivke.
V # 33) Kdaj uporabiti referenčne argumente 'const' v funkciji?
Odgovor: Uporaba referenčnih argumentov 'const' v funkciji je koristna na več načinov:
- “Const” ščiti pred programskimi napakami, ki bi lahko spremenile podatke.
- Kot rezultat uporabe funkcije 'const' lahko funkcija obdeluje tako const kot tudi non-const dejanske argumente, kar ni mogoče, če se ne uporablja 'const'.
- Uporaba sklica const bo funkciji omogočila, da na primeren način ustvari in uporabi začasno spremenljivko.
Struktura in uporabniško določeni tipi podatkov
V # 34) Kaj je razred?
Odgovor: Razred je uporabniško določen podatkovni tip v jeziku C ++. Lahko ga ustvarimo za reševanje določene vrste težav. Po ustvarjanju uporabniku ni treba poznati podrobnosti o delu razreda.
Na splošno razred deluje kot načrt projekta in lahko vključuje različne parametre in funkcije ali dejanja, ki delujejo na te parametre. Ti se imenujejo člani razreda.
V # 35) Razlika med razredom in strukturo.
Odgovor:
Struktura: V jeziku C se struktura uporablja za združevanje različnih vrst podatkovnih tipov. Spremenljivke znotraj strukture imenujemo člani strukture. Ti člani so privzeto javni in do njih lahko dostopate z uporabo imena strukture, ki mu sledi operator pike, in nato imena člana.
Razred: Razred je naslednik Strukture. C ++ razširja definicijo strukture tako, da vključuje funkcije, ki delujejo na njene člane. Privzeto so vsi člani znotraj razreda zasebni.
Objektno usmerjeno programiranje s C ++
Razredi, konstruktorji, destruktorji
V # 36) Kaj je imenski prostor?
Odgovor: Imenski prostor nam omogoča združevanje nabora globalnih razredov, predmetov in / ali funkcij pod določeno ime.
Splošna oblika za uporabo imenskih prostorov je:
identifikator imenskega prostora {namespace-body}
Kjer je identifikator kateri koli veljaven identifikator, telo imenskega prostora pa nabor razredov, predmetov in funkcij, ki so vključeni v imenski prostor. Imenski prostori so še posebej uporabni, če obstaja možnost, da ima več predmetov isto ime, kar povzroči spopadi imen.
V # 37) Kakšna je uporaba izjave o uporabi?
Odgovor: Uporaba izjave se uporablja za sklicevanje na ime iz imenskega prostora brez operaterja ločljivosti obsega.
V # 38) Kaj je ime Mangling?
Odgovor: Prevajalnik C ++ kodira tipe parametrov s funkcijo / metodo v edinstveno ime. Ta postopek se imenuje mangling. Inverzni postopek se imenuje demangling.
Primer:
A :: b (int, dolgo) const je pokvarjen kot ‘B__C3Ail’ .
Za konstruktor je ime metode izpuščeno.
To je A :: A (int, dolgo) const je pokvarjen kot 'C3Ail'.
V # 39) Kakšna je razlika med objektom in razredom?
Odgovor: Predavanje je načrt projekta ali problema, ki ga je treba rešiti, in je sestavljen iz spremenljivk in metod. Ti se imenujejo člani razreda. Do metod ali spremenljivk razreda ne moremo dostopati sami, če niso razglašene za statične.
Če želimo dostopati do članov razreda in jih uporabiti, bi morali ustvariti primerek razreda, ki se imenuje objekt. Razred ima neomejeno življenjsko dobo, medtem ko ima predmet le omejeno življenjsko dobo.
V # 40) Kateri so različni določevalniki dostopa v jeziku C ++?
vprašanja poslovnega analitika o zavarovanju domene
Odgovor: C ++ podpira naslednje specifikacije dostopa:
- Javno: Podatkovni člani in funkcije so dostopni zunaj razreda.
- Zasebno: Člani in funkcije podatkov niso na voljo zunaj razreda. Izjema je uporaba predavanja prijatelja.
- Zaščiteno: Podatkovni člani in funkcije so dostopni samo izpeljanim razredom.
Primer:
Opišite ZASEBNO, ZAŠČITENO in JAVNO ter njihove razlike in navedite primere.
class A{ int x; int y; public int a; protected bool flag; public A() : x(0) , y(0) {} //default (no argument) constructor }; main(){ A MyObj; MyObj.x = 5; // Compiler will issue a ERROR as x is private int x = MyObj.x; // Compiler will issue a compile ERROR MyObj.x is private MyObj.a = 10; // no problem; a is public member int col = MyObj.a; // no problem MyObj.flag = true; // Compiler will issue a ERROR; protected values are read only bool isFlag = MyObj.flag; // no problem
V # 41) Kaj je konstruktor in kako se imenuje?
Odgovor: Konstruktor je funkcija člana razreda z istim imenom kot razred. Uporablja se predvsem za inicializacijo članov razreda. Konstruktorji so privzeto javni.
Konstruktorja imenujemo na dva načina:
- Implicitno: Predelovalec implicitno pokliče konstruktorje, ko je ustvarjen predmet razreda. S tem se ustvari predmet v skladišču.
- Izrecno klicanje: Ko se objekt razreda ustvari z uporabo novega, se izrecno pokličejo konstruktorji. To običajno ustvari predmet na kopici.
Primer:
class A{ int x; int y; public A() : x(0) , y(0) {} //default (no argument) constructor }; main() { A Myobj; // Implicit Constructor call. In order to allocate memory on stack, //the default constructor is implicitly called. A * pPoint = new A(); // Explicit Constructor call. In order to allocate //memory on HEAP we call the default constructor. }
V # 42) Kaj je KOPIRNI KONSTRUKTOR in kdaj se imenuje?
Odgovor: Konstruktor kopiranja je konstruktor, ki kot svoj parameter sprejme predmet istega razreda in kopira svoje člane podatkov v objekt na levem delu dodelitve. Koristno je, kadar moramo zgraditi nov objekt istega razreda.
Primer:
class A{ int x; int y; public int color; public A() : x(0) , y(0) {} //default (no argument) constructor public A( const A& ) ; }; A::A( const A & p ) { this->x = p.x; this->y = p.y; this->color = p.color; } main() { A Myobj; Myobj.color = 345; A Anotherobj = A( Myobj ); // now Anotherobj has color = 345 }
V # 43) Kaj je privzeti konstruktor?
Odgovor: Privzeti konstruktor je konstruktor, ki nima nobenega argumenta ali če obstajajo, so vsi privzeti argumenti.
Primer:
class B { public: B (int m = 0) : n (m) {} int n; }; int main(int argc, char *argv()) { B b; return 0; }
V # 44) Kaj je konstruktor pretvorbe?
Odgovor: Je konstruktor, ki sprejme en argument druge vrste. Konstruktorji za pretvorbo se v glavnem uporabljajo za pretvorbo iz ene vrste v drugo.
V # 45) Kaj je eksplicitni konstruktor?
Odgovor: Konstruktor pretvorbe je naveden z izrecno ključno besedo. Prevajalnik ne uporablja eksplicitnega konstruktorja za izvajanje posredne pretvorbe tipov. Njegov namen je izrecno rezerviran za gradnjo.
V # 46) Kakšna je vloga ključne besede Static za spremenljivko člana razreda?
Odgovor: Spremenljivka statičnega člana si deli skupni pomnilnik med vsemi predmeti, ustvarjenimi za posamezni razred. Ni nam treba sklicevati na statično spremenljivko člana z uporabo predmeta. Do njega pa je mogoče dostopati s samim imenom razreda.
V # 47) Pojasnite funkcijo statičnega člana.
Odgovor: Funkcija statičnega člana lahko dostopa samo do spremenljivke statičnega člana razreda. Tako kot spremenljivke statičnega člana je tudi do funkcije statičnega člana mogoče dostopati z imenom razreda.
V # 48) Kakšen je vrstni red uničenja lokalnih predmetov?
Odgovor: Razmislite o naslednjem delu kode:
Class A{ …. }; int main() { A a; A b; ... }
V glavni funkciji imamo dva predmeta, ustvarjena drug za drugim. Ustvarjajo se po vrstnem redu, najprej a nato b. Ko pa se ti predmeti izbrišejo ali če izstopijo iz obsega, se destruktor za vsakega pokliče v obratnem vrstnem redu, v katerem so bili zgrajeni.
Zato se najprej pokliče destruktor b, ki mu sledi a. Tudi če imamo vrsto predmetov, bodo uničeni na enak način v obratnem vrstnem redu njihovega ustvarjanja.
Preobremenitev
V # 49) Pojasnite preobremenitev funkcije in preobremenitev operaterja.
Odgovor: C ++ podpira OOPs koncept polimorfizem, kar pomeni 'veliko oblik'.
V jeziku C ++ imamo dve vrsti polimorfizma, to je polimorfizem v času prevajanja in polimorfizem med izvajanjem. Polimorfizem v času prevajanja se doseže s tehniko preobremenitve. Preobremenitev preprosto pomeni, da entiteti damo dodaten pomen z ohranjanjem njegovega osnovnega pomena.
C ++ podpira dve vrsti preobremenitve:
Preobremenitev funkcije:
Preobremenitev funkcij je tehnika, ki programerju omogoča več kot eno funkcijo z istim imenom, vendar z različnim seznamom parametrov. Z drugimi besedami, funkcijo preobremenimo z različnimi argumenti, torej naj bo to vrsta argumentov, število argumentov ali vrstni red argumentov.
Preobremenitev funkcije pri njenem povratnem tipu ni nikoli dosežena.
Preobremenitev operaterja:
To je še ena vrsta polimorfizma v času prevajanja, ki jo podpira C ++. Pri preobremenitvi operaterja je operater preobremenjen, tako da lahko deluje tako z uporabniško določenimi tipi kot z operandi standardnega podatkovnega tipa. Toda pri tem je standardna definicija tega operaterja nedotaknjena.
Na primer, operater seštevanja (+), ki deluje na številskih podatkovnih vrstah, je mogoče preobremeniti, da deluje na dveh objektih, tako kot predmet kompleksnega številskega razreda.
V # 50) Kakšna je razlika med preobremenitvijo metode in preglasitvijo metode v C ++?
Odgovor: Preobremenitev metode ima funkcije z istim imenom, vendar z različnimi seznami argumentov. To je oblika polimorfizma v času prevajanja.
Preglasitev metode se pojavi, ko prepišemo metodo, ki izhaja iz osnovnega razreda. Preglasitev metode se uporablja pri obravnavanju polimorfizma med izvajanjem ali navideznih funkcij.
V # 51) Kakšna je razlika med konstruktorjem kopij in preobremenjenim Operator dodelitve?
Odgovor: Konstruktor kopij in preobremenjeni operater dodelitve v bistvu služita istemu namenu, torej dodelitvi vsebine enega predmeta drugemu. A vseeno obstaja razlika med njima.
Primer:
complex c1,c2; c1=c2; //this is assignment complex c3=c2; //copy constructor
V zgornjem primeru je drugi stavek c1 = c2 preobremenjen stavek o dodelitvi.
Tu sta oba c1 in c2 že obstoječa predmeta in vsebina c2 je dodeljena predmetu c1. Zato je treba za preobremenjeni stavek o dodelitvi oba predmeta že ustvariti.
Naslednja izjava, kompleks c3 = c2, je primer konstruktorja kopij. Tu je vsebina c2 dodeljena novemu objektu c3, kar pomeni, da konstruktor kopiranja vsakič, ko se izvede, ustvari nov objekt.
V # 52) Poimenujte operaterje, ki jih ni mogoče preobremeniti.
Odgovor:
- velikost - velikost operaterja
- . - Operator pik
- . * - operater preusmeritve
- -> - operater preusmerjanja članov
- :: - operater ločljivosti obsega
- ?: - pogojni operator
Q # 53) Funkcijo je mogoče preobremeniti na podlagi parametra, ki je vrednost ali referenca. Pojasnite, ali je trditev resnična.
Odgovor: Lažno. Oba, posredovana po vrednosti in posredovana po referenci, sta enaka klicatelju.
V # 54) Kakšne so prednosti preobremenitve operaterja?
Odgovor: S preobremenitvijo standardnih operatorjev v razredu lahko razširimo pomen teh operaterjev, tako da lahko delujejo tudi na drugih uporabniško določenih objektih.
Preobremenitev funkcij nam omogoča, da zmanjšamo zapletenost kode in jo naredimo bolj jasno in berljivo, saj imamo lahko enaka imena funkcij z različnimi seznami argumentov.
Dedovanje
V # 55) Kaj je dedovanje?
Odgovor: Dedovanje je postopek, s katerim lahko z dodajanjem več funkcij pridobimo značilnosti obstoječe entitete in oblikujemo novo entiteto.
V smislu C ++ dedovanje ustvarja nov razred tako, da ga izpelje iz obstoječega razreda, tako da ima ta novi razred lastnosti tako svojega nadrejenega razreda kot svojega.
V # 56) Kakšne so prednosti dedovanja?
Odgovor: Dedovanje omogoča ponovno uporabnost kode in s tem prihrani čas pri razvoju kode.
Z dedovanjem uporabljamo visokokakovostno programsko opremo brez napak, ki zmanjšuje prihodnje težave.
V # 57) Ali C ++ podpira večnivojsko in več dediščino?
Odgovor: Da.
V # 58) Kaj je več dediščin (virtualno dedovanje)? Katere so njegove prednosti in slabosti?
Odgovor: V več dedovanjih imamo več kot en osnovni razred, iz katerega lahko deduje izpeljani razred. Izpeljani razred ima torej lastnosti in lastnosti več kot enega osnovnega razreda.
Na primer , razred voznik bo imel dva osnovna razreda, in sicer, zaposleni in oseba, ker je voznik tako delavec kot delavec. To je ugodno, ker lahko razred voznika podeduje lastnosti zaposlenega in tudi razred osebe.
Toda v primeru zaposlenega in osebe bo razred imel nekaj skupnih lastnosti. Vendar se bo pojavila dvoumna situacija, saj razred voznika ne bo poznal razredov, iz katerih bi bilo treba podedovati skupne lastnosti. To je glavna pomanjkljivost več dediščin.
V # 59) Pojasnite razmerja med razredoma ISA in HASA. Kako bi izvedli vsak?
Odgovor: Razmerje 'ISA' ponavadi kaže dedovanje, saj pomeni, da je za razred 'ISA' specializirana različica drugega razreda. Na primer , Zaposlena oseba ISA. To pomeni, da je razred Employee podedovan iz razreda Person.
V nasprotju z “ISA” razmerje “HASA” prikazuje, da ima lahko entiteta kot entiteto drugo entiteto ali pa ima razred vgrajen drug predmet.
Torej, če vzamemo isti primer razreda Employee, način, s katerim razred Plača povežemo z zaposlenim, ni tako, da ga podedujemo, ampak tako, da v razred Employee vključimo ali vsebujemo objekt Plača. Razmerje 'HASA' je najbolje prikazati s zadrževanjem ali združevanjem.
V # 60) Ali izpeljani razred podeduje ali ne?
Odgovor: Ko je izpeljani razred izdelan iz določenega osnovnega razreda, v bistvu podeduje vse lastnosti in navadne člane osnovnega razreda. Toda to pravilo ima nekaj izjem. Izpeljani razred na primer ne podeduje konstruktorjev in destruktorjev osnovnega razreda.
Vsak razred ima svoje konstruktorje in destruktorje. Izpeljani razred prav tako ne podeduje operaterja dodelitve osnovnega razreda in prijateljev razreda. Razlog je v tem, da so te entitete specifične za določen razred in če je izpeljan drug razred ali če je prijatelj tega razreda, jih ni mogoče prenesti nanje.
Polimorfizem
V # 61) Kaj je polimorfizem?
Odgovor: Osnovna ideja polimorfizma je v mnogih oblikah. V jeziku C ++ imamo dve vrsti polimorfizma:
(i) Polimorfizem v času prevajanja
V polimorfizmu v času prevajanja dosežemo številne oblike s preobremenitvijo. Zato imamo preobremenitev operaterja in preobremenitev funkcije. (To smo že pokrili zgoraj)
(ii) Polimorfizem med izvajanjem
To je polimorfizem razredov in predmetov. Splošna ideja je, da lahko osnovni razred podeduje več razredov. Kazalec osnovnega razreda lahko kaže na svoj podrejeni razred, polje osnovnega razreda pa lahko shrani različne predmete podrejenega razreda.
To pomeni, da se objekt različno odzove na isti klic funkcije. Ta vrsta polimorfizma lahko uporablja mehanizem navidezne funkcije.
V # 62) Kaj so navidezne funkcije?
Odgovor: Navidezna funkcija omogoča, da izvedeni razredi nadomestijo izvajanje, ki ga zagotavlja osnovni razred.
Kadar imamo v osnovnem in izpeljanem razredu funkcije z istim imenom, pride do dvoumnosti, ko poskušamo do predmeta podrejenega razreda dostopati s kazalcem osnovnega razreda. Ker uporabljamo kazalec osnovnega razreda, je funkcija, ki jo imenujemo, funkcija osnovnega razreda z istim imenom.
Da bi odpravili to dvoumnost, pred osnovnim razredom prototipa funkcije uporabimo ključno besedo »virtualno«. Z drugimi besedami, to polimorfno funkcijo naredimo virtualno. Z uporabo funkcije Virtual lahko odstranimo dvoumnost in z uporabo kazalca osnovnega razreda pravilno dostopamo do vseh funkcij podrejenega razreda.
V # 63) Navedite primer polimorfizma / navideznih funkcij med izvajanjem.
Odgovor:
class SHAPE{ public virtual Draw() = 0; //abstract class with a pure virtual method }; class CIRCLE: public SHAPE{ public int r; public Draw() { this->drawCircle(0,0,r); } }; class SQUARE: public SHAPE{ public int a; public Draw() { this->drawSquare(0,0,a,a); } }; int main() { SHAPE shape1*; SHAPE shape2*; CIRCLE c1; SQUARE s1; shape1 = &c1; shape2 = &s1; coutV zgornji kodi ima razred SHAPE čisto navidezno funkcijo in je abstraktni razred (ni ga mogoče instantirati). Vsak razred je izpeljan iz SHAPE, ki na svoj način izvaja funkcijo Draw ().
Nadalje je vsaka funkcija Draw navidezna, tako da se, kadar vsakič uporabimo kazalec osnovnega razreda (SHAPE) z objektom izvedenih razredov (Circle in SQUARE), pokličejo ustrezne funkcije Draw.
V # 64) Kaj mislite s Pure Virtual Functions?
Odgovor: Funkcija čistega navideznega člana je funkcija člana, pri kateri osnovni razred prisili izpeljane razrede, da preglasijo. Ta funkcija člana običajno nima izvedbe. Čiste navidezne funkcije so enake nič.
Primer:
class Shape { public: virtual void draw() = 0; };
Osnovni razred, ki ima za svojega člana čisto navidezno funkcijo, lahko označimo kot »abstraktni razred«. Tega razreda ni mogoče ustvariti in ponavadi deluje kot načrt z več podrazredi z nadaljnjo implementacijo.
V # 65) Kaj so navidezni konstruktorji / destruktorji?
Odgovor:
Navidezni destruktorji: Ko uporabimo kazalec osnovnega razreda, ki kaže na objekt izpeljanega razreda in ga uporabimo za njegovo uničenje, potem namesto klica izpeljanega destruktorja razreda pokličemo destruktor osnovnega razreda.
Primer:
Class A{ …. ~A(); }; Class B:publicA{ … ~B(); }; B b; A a = &b; delete a;
Kot je prikazano v zgornjem primeru, ko rečemo, da izbrišete a, se pokliče destruktor, ki pa je dejansko destruktor osnovnega razreda. To povzroča dvoumnost, da ves pomnilnik, ki ga ima b, ne bo pravilno očiščen.
To težavo je mogoče rešiti s konceptom 'Virtual Destructor'.
Kar naredimo, naredimo konstruktor osnovnega razreda »Virtual«, tako da postanejo tudi vsi destruktorji podrejenega razreda navidezni in ko izbrišemo predmet osnovnega razreda, ki kaže na objekt izpeljanega razreda, se pokliče ustrezen destruktor in vsi predmeti so pravilno izbrisani.
To je prikazano na naslednji način:
kako začeti nov projekt v mrku
Class A{ …. virtual ~A(); }; Class B:publicA{ … ~B(); }; B b; A a = &b; delete a;
Virtualni graditelj : Konstruktorji ne morejo biti virtualni. Razglasitev konstruktorja kot navidezne funkcije je sintaksna napaka.
Prijatelj
V # 66) Kaj je funkcija prijatelja?
Odgovor: Razred C ++ ne dovoljuje dostopa do njegovih zasebnih in zaščitenih članov zunaj razreda. Toda to pravilo je mogoče kršiti z uporabo ' Prijatelj ”.
Kot že samo ime pove, je funkcija prijatelja zunanja funkcija, ki je prijatelj razreda. Da lahko funkcija prijatelja dostopa do zasebnih in zaščitenih metod razreda, bi morali imeti v razredu prototip funkcije prijatelja s ključno besedo »prijatelj«.
V # 67) Kaj je razred učencev?
Odgovor: Prijateljski razredi se uporabljajo, kadar moramo preglasiti pravilo za zasebne in zaščitene specifikatorje dostopa, tako da lahko dva razreda tesno sodelujeta.
Tako lahko imamo prijateljski razred, da postanemo prijatelj drugega razreda. Tako lahko razredi prijateljev ohranijo zasebne, nedostopne stvari takšne, kot so.
Ko imamo zahtevo za dostop do notranje izvedbe razreda (zasebnega člana), ne da bi javnosti razkrili podrobnosti, se odločimo za prijateljske funkcije.
Napredni C ++
Predloge
V # 68) Kaj je predloga?
Odgovor: Predloge omogočajo ustvarjanje funkcij, ki so neodvisne od podatkovnega tipa (generično) in lahko sprejmejo kateri koli podatkovni tip kot parametre in vrnejo vrednost, ne da bi morali funkcijo preobremeniti z vsemi možnimi podatkovnimi vrstami. Predloge skoraj izpolnjujejo funkcionalnost makra.
Njegov prototip je eden od naslednjih:
predloga prepoznati > izjava o funkciji;
predloga prepoznati > izjava o funkciji;
Edina razlika med obema prototipom je uporaba ključnega besede razreda ali imena tipa. Njihova osnovna funkcionalnost generičnosti ostaja enaka.
Ravnanje z izjemami
V # 69) Kaj je obravnava izjem? Ali C ++ podpira obdelavo izjem?
Odgovor: Da, C ++ podpira obdelavo izjem.
Ne moremo zagotoviti, da se bo koda ves čas izvajala normalno. V nekaterih primerih lahko koda, ki smo jo napisali, povzroči napako, čeprav je brez napak. Ta okvara kode se imenuje Izjema .
Ko pride do izjeme, jo mora prevajalnik vrniti, tako da vemo, da je prišlo do izjeme. Ko je vržena izjema, mora prevajalnik zagotoviti, da se z njo pravilno ravna, tako da se potek programa nadaljuje ali pravilno konča. To se imenuje obravnava izjeme.
Tako imamo v C ++ tri ključne besede, tj. poskusite , vrgel in ulov ki so v obravnavi izjem.
Splošna sintaksa bloka izjem je:
try{ …. # Code that is potentially about to throw exception goes here …. throw exception; } catch(exception type) { … #code to handle exception goes here }
Kot je prikazano zgoraj, je koda, ki bi lahko povzročila okvare, postavljena pod poskusni blok. Kadar koda ne deluje, se vrne izjema. Ta izjema se nato ujame pod blok ulova in se obravnava, tj. Sprejmejo se ustrezni ukrepi.
V # 70) Komentirajte standardne izjeme za C ++?
Odgovor: C ++ podpira nekatere standardne izjeme, ki jih je mogoče ujeti, če vstavimo kodo v poskusni blok. Te izjeme so del osnovnega razreda “ std :: izjema ”. Ta razred je definiran v datoteki glave C ++.
Nekaj primerov izjem, ki jih podpira ta razred, vključuje:
bad_alloc - vrgel 'novo'
runtime_error - vrže se zaradi napak med izvajanjem
bad_typeid - vrže ga id tipa
Uvod v knjižnico standardnih predlog
V # 71) Kaj je standardna knjižnica predlog (STL)? Katere so različne vrste zabojnikov STL?
Odgovor: Standardna knjižnica predlog (STL) je knjižnica predlog vsebnikov, ki jo je odbor ANSI odobril za vključitev v standardno specifikacijo C ++. Na voljo imamo različne vrste STL posod, odvisno od tega, kako hranijo elemente.
- Čakalna vrsta, Stack - Ti so enaki tradicionalnim čakalnim vrstam in skladom in se imenujejo prilagodljivi vsebniki.
- Set, Map - To so v bistvu vsebniki, ki imajo pare ključ / vrednost in so asociativne narave.
- Vektor in - Ti so zaporedne narave in so podobni nizom.
V # 72) Kaj je razred Iterator?
Odgovor: V C ++ je razred vsebnika zbirka različnih predmetov.
Če moramo prečkati to zbirko predmetov, tega ne moremo storiti z uporabo preprostih indeksnih spremenljivk. Zato imamo v STL poseben razred, imenovan Iterator razreda, s katerim lahko pregledujete vsebino razreda vsebnika.
Različne kategorije iteratorjev vključujejo vhodni iteratorji, izhodni iteratorji, posredniki, dvosmerni iteratorji, naključni dostop itd.
V # 73) Kakšna je razlika med zunanjim iteratorjem in notranjim iteratorjem? Opišite prednost Zunanjega iteratorja.
Odgovor: Notranji iterator je implementiran s članskimi funkcijami razreda, ki ima elemente, skozi katere je treba stopiti.
Zunanji iterator je izveden kot ločen razred, ki ga je mogoče vezati na objekt, ki ima predmete, skozi katere je treba stopiti. Osnovna prednost zunanjega iteratorja je, da je enostaven za izvedbo, saj je izveden kot ločen razred.
Drugič, ker gre za drug razred, je lahko hkrati veliko aktivnih predmetov iteratorjev.
Nadaljnje branje => Vprašanja za intervju z C #
Zaključek
V tem članku so zajete skoraj vse glavne teme kodiranja in programiranja razgovora na C ++.
Upamo, da se bo kateri koli kandidat po pripravi na razgovor s to serijo vprašanj za intervju počutil sproščeno.
Vse najboljše za vaš intervju !!
Priporočeno branje
- Vprašanja in odgovori za intervju
- Vprašanja in odgovori za preizkušanje ETL
- Nekaj zapletenih ročnih preizkusov Vprašanja in odgovori
- 25 najboljših vprašanj in odgovorov za intervju z agilnim testiranjem
- Vprašanja za intervju z Spockom z odgovori (najbolj priljubljeno)
- Nekaj zanimivih vprašanj za preskušanje programske opreme
- Najboljših 20+ vprašanj in odgovorov na .NET
- 32 najboljših vprašanj in odgovorov za intervju z Datastage