Blog IT, Blog Marketing

10 pytań rekrutacyjnych C++ z odpowiedziami

10 pytań rekrutacyjnych C++ z odpowiedziami

Magdalena Uszyńska , 08.03.2023 r.

Z jakimi pytaniami z języka programowania C++ możesz się spotkać na rozmowie rekrutacyjnej? Poniżej przedstawiamy 10 najczęściej pojawiających się pytań i odpowiedzi.

W artykule wymieniono:

  1. Jaki jest rozmiar danych typu int?
  2. Wymień różnicę pomiędzy prefix a postfix
  3. Wymień różnice pomiędzy while-loop a do-while-loop
  4. Czy da się skompilować program bez main function?
  5. Czym jest funkcja wirtualna w C++?
  6. Jakie są trzy różne typy specyfikatorów dostępu C++?
  7. Czym jest abstrakcja w C++?
  8. Czy można przeciążyć destruktor? Wyjaśnij
  9. Czym jest pojęcie OOP w C++?
  10. Czym jest przeciążenie operatora (operator overloading)?

1. Jaki jest rozmiar danych typu int?

Rozmiar danych typu int to 4 bajty.

2. Wymień różnicę pomiędzy prefix a postfix

Prefix (++i) najpierw zwiększa wartość, a następnie przypisuje wartość do wyrażenia.

Postfix (i++) przypisuje wartość do wyrażenia, a następnie zwiększa wartość zmiennej.

3. Wymień różnice pomiędzy while-loop a do-while-loop

while-loop weryfikuje, czy warunek jest prawdziwy, czy fałszywy. Jeśli jest prawdziwy, iteruje pętlę tak długo, aż stanie się fałszywy. Jeśli warunek był fałszywy, wówczas nie wystąpi żadna iteracja.;

while-do-loop najpierw wykonuje jednorazową iterację loop body, a następnie sprawdza warunek. Jeśli jest fałszywy, iteracja loop body będzie jednorazowa.

4. Czy da się skompilować program bez main function?

Tak, można skompilować program bez main function, ale nie możesz uruchomić ani zaimplementować programu, ponieważ funkcja main() jest funkcją główną, która uruchamia program.

5. Czym jest funkcja wirtualna w C++?

Funkcja wirtualna (virtual function) to funkcja składowa w klasie bazowej,zredefiniowana w klasie pochodnej. Uruchamia się ją za pomocą słowa kluczowego virtual. Zapewnia wywołanie poprawnej funkcji dla obiektu, niezależnie od typu odniesienia/wskaźnika użytego do wywołania tej funkcji. Funkcje wirtualne są używane głównie do polimorfizmu środowiska uruchomieniowego.

6. Jakie są trzy różne typy specyfikatorów dostępu C++?

Publiczne: wszystkie funkcje składowe i składowe danych są dostępne poza klasą.

Chronione: wszystkie funkcje składowe i składowe danych są dostępne w klasie i klasie pochodnej.

Prywatne: nie można uzyskać dostępu do wszystkich funkcji składowych i członków danych poza klasą.

7. Czym jest abstrakcja w C++?

Abstrakcja oznacza wyświetlanie istotnych szczegółów użytkownikowi przy jednoczesnym ukryciu szczegółów nieistotnych lub niepożądanych dla oczu użytkownika. W C++ wyróżniamy dwa rodzaje abstrakcji: data abstraction dotyczącą danych oraz control abstraction.

8. Czy można przeciążyć destruktor? Wyjaśnij

Nie można przeciążyć destruktorów. Jest to niemożliwe, ponieważ destruktory nie przyjmują argumentów ani niczego nie zwracają. W każdej klasie musi być tylko jeden pusty destruktor, który powinien mieć pustą listę parametrów.

9. Czym jest pojęcie OOP w C++?

  • Obiekt
  • Klasa
  • Dziedzictwo
  • Wielopostaciowość
  • Kapsułkowanie
  • Abstrakcja

Obiekt: Wszystko, co istnieje fizycznie w prawdziwym świecie, nazywane jest obiektem.

Klasa: Kolekcja obiektów nazywana jest klasą.

Dziedziczenie: Właściwości klasy nadrzędnej odziedziczone po klasie podrzędnej są znane jako dziedziczenie.

Polimorfizm: Jest to zdolność do istnienia w więcej niż jednej formie.

Hermetyzacja: Powiązanie kodu i danych w jedną całość.

Abstrakcja: Ukrywanie wewnętrznych szczegółów i pokazywanie użytkownikowi funkcjonalności.

10. Czym jest przeciążenie operatora (operator overloading)?

Przeciążanie operatorów to mechanizm, w którym operatorowi nadawane jest specjalne znaczenie. Można przeciążyć operator „+” w łańcuchu przypominającym klasę, aby połączyć dwa ciągi, używając tylko „+”.

Najnowsze oferty pracy:

Polecane wpisy na blogu IT:

Szukasz pracownika IT?

Dostarczymy Ci najlepszych specjalistów z branży IT. Wyślij zapytanie

Wyrażam zgodę TeamQuest Sp. z o.o. na przetwarzanie moich danych osobowych w celu marketingu produktów i usług własnych TeamQuest, w tym na kontaktowanie się ze mną w formie połączenia telefonicznego lub środkami elektronicznymi.
Administratorem podanych przez Ciebie danych osobowych jest TeamQuest Sp. z o.o., z siedzibą w Warszawie (00-814), ul. Miedziana 3a/21, zwana dalej „Administratorem".
Jeśli masz jakiekolwiek pytania odnośnie przetwarzania przez nas Twoich danych, skontaktuj się z naszym Inspektorem Ochrony Danych (IOD). Do Twojej dyspozycji jest pod adresem e-mail: office@teamquest.pl.
W jakim celu i na jakiej podstawie będziemy wykorzystywać Twoje dane? Dowiedz się więcej