ОО1/К1 2022

Извор: SI Wiki
< ОО1
Датум измене: 22. новембар 2023. у 18:43; аутор: Владимир Мисовић (разговор | доприноси) (→‎3. zadatak: Fali tačka zarez na kralju definicije svake klase.)
(разл) ← Старија измена | Тренутна верзија (разл) | Новија измена → (разл)
Пређи на навигацију Пређи на претрагу
  • За питања са више одговора, тачни одговори су подебљани и уоквирени
  • За питања за које се одговори уносе, тачни одговори су подвучени и сакривени, тако да се прикажу када изаберете тај текст (пример: овако)
  • Притисните лево дугме испод за сакривање и откривање свих одговора, или десно дугме за укључивање и искључивање интерактивног режима:

1. задатак

Шта може да стоји уместо XXX да би се код покретао успешно?

int g(int i) { return i; }

int main() {
    int a = 5;
    decltype (XXX) b = 5;
}
  1. инт
  2. а+1
  3. а++
  4. г(г(4))

2. задатак

Шта се исписује приликом покретања следећег кода?

class X {
public:
    X(int p) : z(++p), y(++p), x(++p) {cout << x << y << z;}
private:
    int x, y, z;
};

int main() {
    X x(3);
}

Одговор: 456

Објашњење: Иницијализација атрибута се врши редоследом навођења у класи, без обзира на редослед у листи иницијализатора.

3. задатак

Шта исписује следећи код на програмском језику C++:

class A {
public:
    ~A() {cout << "A";}
};

class B {
public:
    ~B() {cout << "B";}	
};

class C {
    A a;
    B b;
public:
    ~C() {cout << "C";}
};

int main() {
    delete new C();
}

Одговор: ЦБА

Објашњење: Редослед позивања деструктора је обрнут од редоследа позивања конструктора.

4. задатак

Шта важи за пријатељске функције?

  1. Пријатељска функција може бити метод неке друге класе.
  2. Пријатељска функција декларисана у јавном одељку нема приступ приватним атрибутима.
  3. Да би функција била пријатељска она мора да буде дефинисана унутар класе.
  4. Пријатељска функција дефинисана унутар класе је подразумевано inline.

5. задатак

Које аспекте је по Строуструпу требало да испуни C++:

  1. Да буде бржи од C-а
  2. Да буде преносив
  3. Да буде довољно близак машини
  4. Да буде довољно близак проблему
  5. Да се користи за програмирање интефејса

6. задатак

Шта важи за права приступа:

  1. У структури је подразумеван public одељак.
  2. Приватни нестатички метод има право приступа само приватним атрибутима.
  3. Постоји само по један public, private и protected одељак.
  4. У класи је подразумеван private одељак.

7. задатак

Шта је валидна операција над следећим низом?

int niz[] = {1,2,3,4};
  1. низ[0] = 1;
  2. инт x = низ[1];
  3. низ++;
  4. инт *нови_низ = низ;
  5. инт *низ = неw инт[4];

8. задатак

Са којим модификаторима могу да се позивају функције за променљиве објекте?

  1. цонст
  2. цонст волатиле
  3. тхис
  4. волатиле
  5. без модификатора

9. задатак

Шта може да стоји уместо ??? да би код био исправан?

#include <iostream>

int& f(int& i, const int& j);

const int& g(int &i) { return i; }

int main() {
    int a = 3;
    int* p = &a;
    const int *pk = &a;

    ???

    return 0;
}
  1. ф(а + 1, а);
  2. ф(а, а);
  3. ф(*пк, а);
  4. ф(а, г(а));
  5. ф(а, *п);

10. задатак

Које од следећих декларација функција су исправне?

  1. инт ф(инт а = 1, инт б, инт ц);
  2. инт ф(инт а = 1, инт б = 2, инт ц = 3);
  3. инт ф(инт а = 1, инт б = 2, инт ц);
  4. инт ф(инт а, инт б = 2, инт ц = 3);
  5. инт ф(инт а, инт б = 2, инт ц);