12 C++-haastattelukysymystä ja -vastausta (perusteista edistyneisiin)

By Jason Boog

Ennakkoon tietäminen siitä, millaisia C++-kysymyksiä mahdollinen työnantaja saattaa esittää, on erinomainen tapa valmistautua, etenkin jos hermostuneisuus ottaa haastatteluissa vallan.  Ohjelmointihaastatteluun valmistautuminen on kuin kokeeseen lukemista. Tunnet aiheen niin hyvin, ettet unohda tarvittavia asioita, vaikka olisit kuinka hermostunut.  Olen koonnut alle joitakin useimmin esitettyjä kysymyksiä ja vastauksia, jotta saat käsityksen siitä, millaiseen suuntaan haastattelusi saattaa edetä […]

Ennakkoon tietäminen siitä, millaisia C++-kysymyksiä mahdollinen työnantaja saattaa esittää, on erinomainen tapa valmistautua, etenkin jos hermostuneisuus ottaa haastatteluissa vallan. 

Ohjelmointihaastatteluun valmistautuminen on kuin kokeeseen lukemista. Tunnet aiheen niin hyvin, ettet unohda tarvittavia asioita, vaikka olisit kuinka hermostunut. 

Olen koonnut alle joitakin useimmin esitettyjä kysymyksiä ja vastauksia, jotta saat käsityksen siitä, millaiseen suuntaan haastattelusi saattaa edetä ja olet valmis riippumatta siitä, mitä sinulta kysytään.

Tärkeimmät C++-haastattelukysymykset laadunvarmistuksen työhaastatteluusi

Sen ymmärtäminen, millaisia C++-haastattelukysymyksiä voi tulla vastaan, auttaa sinua valmistautumaan tapaamiseen. Ohjelmointikielestä esitetään erilaisia kysymyksiä sen mukaan, mitä alan monista eri tehtävistä haet. Jos et ole aiemmin ollut C++-tehtävän haastattelussa, sinun on ehkä valmistauduttava enemmän suoriutuaksesi haastattelussa hyvin, mutta jos olet tehnyt sitä jo pitkään, C++-koodin kertaus sekä keskeisten käsitteiden, kuten komentoriviargumenttien, käyttöoikeusmääritteiden ja dynaamisen muistinvarauksen, kertaaminen riittää. 

Tärkeä huomautus: Erityyppisissä työhaastatteluissa käytetään erilaisia muotoja. Sinulle voidaan esittää pelkkiä kysymyksiä tai saatat joutua ratkaisemaan C++-harjoitustehtäviä, jotka vaihtelevat perustehtävästä ”Kirjoita ohjelma, joka tulostaa tervehdystekstin omalle rivilleen” aina monimutkaisempaan tehtävään: ”Kun käytössä on kokonaislukutaulukko, etsi alitaulukko, jonka arvo on suurin, kun kaikki sen alkiot lasketaan yhteen. Käytä taulukkoa {1, 2, -5, 4, -3, 2}.”

Joka tapauksessa valmistautuminen kaikkiin ohjelmistotestauksen haastattelukysymyksiin ja vastauksiin (kuten tässä artikkelissa käsittelimme) sekä runsas C++-osaaminen on paras tapa saada haluamasi työ.

C++:n peruskysymykset

1. Osaatko määritellä luokan?

Tällä kysymyksellä varmistetaan, että sinulla on C++-koodin perustiedot.

Vastaus: Luokka määrittää, miten tiedot on jäsennelty. Se on rakenne, joka määrittelee tuettujen tyyppien muodon.

2. Määrittele ”olio”.

Tämä on toinen kysymys, jolla arvioidaan C++-ohjelmointikielen perustuntemusta. Se käsittelee erityisesti olio-ohjelmointia.

Vastaus: Olio on todellinen asia, kuten kannettava tietokone tai kynä. Sillä on tila ja toiminta, eikä se ole puhdas virtuaalifunktio. C++:n tapauksessa olion tila tarkoittaa tietoja, ja toiminta tarkoittaa sitä, miten olio toimii.

Get Free Access
Get regular tech leadership wisdom for delivering better software and systems.
Get Free Access

Have an account? Log In

3. Mitkä ovat OOP:n (olio-ohjelmoinnin) ominaisuudet?

C++-koodauksen haastattelukysymyksillä varmistetaan, että hallitset asiasi, esimerkiksi olio-ohjelmointikielen käytön. Jos et tunne perusteita, et pysty suoriutumaan työtehtävästä.

Vastaus: OOP:n ominaisuuksia ovat abstraktio, kapselointi, periytyminen ja polymorfismi.

4. Mitä abstraktio tarkoittaa?

C++-ohjelmoinnin haastattelukysymyksiin kuuluu myös sellaisia, joilla osoitetaan kielen käytännön tuntemus.

Vastaus: Abstraktiolla piilotetaan ohjelman sisäinen toiminta ja näytetään käyttäjälle vain se, mitä hänen tarvitsee nähdä.

C++-koodin testaaminen

1. Mitä kommentit ovat C++:ssa?

Jos haluat C++-koodin testaajaksi, sinulta kysytään näitä määritteleviä kysymyksiä.

Vastaus: Kommentit ovat lähdekoodin osia, joista on hyötyä ohjelmoijalle mutta ei kääntäjälle. Niiden avulla lähdekoodiin voidaan lisätä kuvaus tai muuta lisätietoa.

2. Mikä ero on muuttujan esittelyllä ja määrittelyllä?

Haastattelun C++-ohjelmointikieltä koskevat kysymykset ovat täsmällisiä, jos tarkastelet koodin testaamista.  

Vastaus: Esittelyssä määritetään tietyn muuttujan tietotyyppi ja nimi. Esittely kertoo kääntäjälle, että muuttujalle on varattava tietotyypin mukainen tila muistista. Muuttujan määrittely antaa sille arvon, jotta linkittäjä voi yhdistää viittaukset oikeisiin entiteetteihin.

3. Voitko kertoa globaalin ja paikallisen muuttujan näkyvyysalueesta? 

Muuttujien ymmärtäminen ohjelmoinnissa on ensiarvoisen tärkeää. Ymmärryksen arviointi ohjelmointihaastattelun aikana on ratkaisevaa.

Vastaus: Muuttujan näkyvyysalue on ohjelmakoodin alue, jolla muuttuja on aktiivinen. Paikallinen muuttuja sijaitsee koodilohkon sisällä ja on aktiivinen ja käytettävissä vain siellä. Globaali muuttuja on käytettävissä koko ohjelmassa.

4. Jos sinulla on samanniminen globaali ja paikallinen muuttuja, miten voit käyttää globaalia muuttujaa?

Vankka ohjelmointiosaaminen on välttämätöntä koodin testaamisessa, joten ymmärryksen syventäminen on tärkeä osa ohjelmointihaastatteluihin valmistautumista.

Vastaus: Jos sinulla on kaksi samannimistä muuttujaa, joista toinen on paikallinen ja toinen globaali, kääntäjä antaa etusijan paikalliselle muuttujalle. Jos sinun on käytettävä globaalia muuttujaa, voit käyttää nimiavaruuden tarkkuusoperaattoria (::).

Edistyneet C++-haastattelukysymykset

1. Mitä periytyminen on ja millaisia periytymisen tyyppejä on olemassa?

Perushaastattelukysymysten jälkeen siirrytään käsittelemään periytymisen toimintaa ja arvioimaan tietämystäsi monimutkaisemmista yksityiskohdista.

Vastaus: Periytymisessä olio saa automaattisesti kaikki yliluokan ominaisuudet ja toiminnot. Periytymisen tyyppejä ovat yksittäisperiytyminen, moniperiytyminen, monitasoinen periytyminen, hybridiperiytyminen ja hierarkkinen periytyminen.

2. Mitä moniperiytyminen on?

Seuraavilla kysymyksillä syvennetään tietämystäsi C++:n olio-ohjelmoinnista.

Vastaus: Moniperiytyminen tarkoittaa sitä, että johdettu luokka perii ominaisuuksia useammasta kuin yhdestä luokasta. Perittyjen luokkien määrä ei rajoitu kahteen.

More Articles

3. Mitä muuttujat ja tietotyypit ovat C++:ssa?

Tämä haastattelukysymys siirtyy määritelmien ulkopuolelle ja käsittelee C++:n toimintaa.

Vastaus: Muuttuja on tietotyypin arvolle varatun muistipaikan nimi. Muuttujan ilmoittaminen varaa muistista tilan tietyn tietotyypin arvolle.

4. Voitko määritellä käsitteet ”konstruktori” ja ”destruktori”?

Selvitetään menetelmiä ja prosesseja koskevaa tietämystäsi.

Vastaus: Konstruktori on erityinen menetelmä, jota käytetään juuri luodun olion alustamiseen. Sitä kutsutaan heti, kun uudelle oliolle on varattu muistia. Destruktori toimii päinvastoin ja vapauttaa olion sekä luokan jäsenten varaaman muistin, kun oliota ei enää tarvita.

Seuraavat vaiheet

Riippumatta siitä, mitä työpaikkaa tavoittelet, valmistautuminen haastatteluun kertaamalla C++-haastattelukysymyksiä ja -vastauksia on paras tapa tuntea olosi varmaksi ja suoriutua parhaalla mahdollisella tavalla.

Tilaa The QA Leadin uutiskirje, josta saat ohjelmistotestauksen vinkkejä ja podcastimme uusimmat jaksot pysyäksesi ajan tasalla QA-maailman parhaista ja kiinnostavimmista aiheista.

Voit myös liittyä jäseneksi ja käyttää The QA Leadin yhteisöfoorumia, jossa voit jakaa parhaita käytäntöjä muiden QA-ammattilaisten ja laatuinsinöörien kanssa. Toivottavasti tapaamme siellä!

Jason Boog
Over his 15-year career, Jason Boog has worked as a QA tester, QA analyst, and Senior QA Analyst on video games, commercial sites, and interactive web applications. He spent more than a decade building out the QA team and process as Director of Quality & Client Support at a full-service digital agency.
Follow the author:

You may also like