ОО1/Фебруар 2021

Извор: SI Wiki
< ОО1
Датум измене: 17. фебруар 2021. у 15:05; аутор: KockaAdmiralac (разговор | доприноси) (Februarski rok (po sećanju `<@127345521789501440>`))
(разл) ← Старија измена | Тренутна верзија (разл) | Новија измена → (разл)
Пређи на навигацију Пређи на претрагу
  • Za pitanja sa više odgovora, tačni odgovori su podebljani i uokvireni.
  • Za pitanja za koje se odgovori unose, tačni odgovori su podvučeni i sakriveni: ovako.
  • Pritisnite na sledeće dugme kako biste ih sakrili ili otkrili:

1. zadatak

Šta najbolje opisuje pojam "apstrakcija":

  1. Odvajanje ugovora od implementacije
  2. Izdvajanje i grupisanje zajedničkih osobina
  3. Kreiranje apstraktnih klasa i metoda
  4. ...

2. zadatak

U sledećem programu na programskom jeziku C++, koji je tip promenljive p?

const int k = 1;
const auto j = k;
auto p = new int + k;
  1. int*
  2. const int*
  3. int
  4. const int
  5. const int* const

3. zadatak

U metodi m koji je tip pokazivača this?

class X
{
	void m() const {};
};
  1. X*
  2. const X*
  3. X*const
  4. const X*const

4. zadatak

Koji od sledećih tvrđenja su tačni za statičke metode klase X:

  1. Nemaju pokazivač this
  2. Imaju pravo pristupa svim članovima X
  3. Imaju javno pravo pristupa nezavisno od sekcije u kojoj se nalaze
  4. Mogu da pristupaju statičkim atributima i funkcijama prostim imenovanjem
  5. Moraju se definisati van tela klase

5. zadatak

Šta ispisuje sledeći program na programskom jeziku C++? Ukoliko se program ne prevodi uneti NP, a ukoliko dođe do greške pri izvršavanju uneti X.

#include <iostream>
using namespace std;

int main() {
	int niz[] = {1, 2, 3};
	int* p = niz;
	p++;
	int& ref = *p;
	ref++;
	cout << niz[0] << niz[1] << niz[2];
}

Rešenje: 133

6. zadatak

Koji je tip argumenta premeštajućeg operatora dodele klase X?

Rešenje: X&&

7. zadatak

Koji su sve ispravni parametri šablona nespecijalizovane generičke klase ili metode:

  1. template<>
  2. template<typename T>
  3. template<typename T, typename U>
  4. template<int N>
  5. template<typename T, int N>

8. zadatak

Koji su pravilni načini izvođenja klase B iz klase A?

  1. class B: A {...};
  2. class B: override A {...};
  3. class B: private protected A {...};
  4. class B: private A {...};
  5. class B: public A {...};

9. zadatak

Šta ispisuje sledeći program na programskom jeziku C++?

#include <iostream>
using namespace std;

class A {
private:
    int a;
public:
    A(int aa=0) : a(aa) {}
    void m() { cout << 1; }
    friend ostream& operator<<(ostream& os,const A& a) { return os << a.a; } 
};

class B: public A{
private:
    int a;
public:
    B(int aa) : a(aa) {}
    int m() { cout << 2; return 2; }
};

int main() {
    A a(5);
    B b(7);
    A* ap = &b;
    a.m();
    b.m();
    ap->m();
    cout << a << b;
}

Rešenje: 12150

10. zadatak

Šta ispisuje sledeći program na programskom jeziku C++? Zanemariti upozorenja prevodioca

#include <iostream>
using namespace std;

class IzuzO {};
class IzuzI : public IzuzO {};

int main() {
	try
	{
		try
		{
			throw new IzuzI();
		}
		catch (IzuzI&) { cout << 1; }
		catch (IzuzO&) { cout << 2; }
		catch (...) { cout << 3; throw; }
	}
	catch (IzuzO*) { cout << 4; }
	catch (IzuzI*) { cout << 5; }
	catch (...) { cout << 6; }
	return 0;
}

Rešenje: 34