<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="sr">
	<id>https://siwiki.rs/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Coa</id>
	<title>SI Wiki - Кориснички доприноси [sr]</title>
	<link rel="self" type="application/atom+xml" href="https://siwiki.rs/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Coa"/>
	<link rel="alternate" type="text/html" href="https://siwiki.rs/wiki/%D0%9F%D0%BE%D1%81%D0%B5%D0%B1%D0%BD%D0%BE:%D0%94%D0%BE%D0%BF%D1%80%D0%B8%D0%BD%D0%BE%D1%81%D0%B8/Coa"/>
	<updated>2026-06-04T03:15:30Z</updated>
	<subtitle>Кориснички доприноси</subtitle>
	<generator>MediaWiki 1.39.8</generator>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%9E%D0%9E1/%D0%9F%D1%80%D0%BE%D0%B1%D0%BD%D0%B8_%D1%82%D0%B5%D1%81%D1%82%D0%BE%D0%B2%D0%B8_2020&amp;diff=1485</id>
		<title>ОО1/Пробни тестови 2020</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%9E%D0%9E1/%D0%9F%D1%80%D0%BE%D0%B1%D0%BD%D0%B8_%D1%82%D0%B5%D1%81%D1%82%D0%BE%D0%B2%D0%B8_2020&amp;diff=1485"/>
		<updated>2020-12-09T10:43:56Z</updated>

		<summary type="html">&lt;p&gt;Coa: /* 10. zadatak */ Nabavio screenshot tačnog rešenja&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}&lt;br /&gt;
* Za pitanja sa više odgovora, tačni odgovori su &amp;lt;span class=&amp;quot;solution-example&amp;quot;&amp;gt;podebljani i uokvireni&amp;lt;/span&amp;gt;.&lt;br /&gt;
* Za pitanja za koje se odgovori unose, tačni odgovori su podvučeni i sakriveni: &amp;lt;span class=&amp;quot;spoiler-example&amp;quot;&amp;gt;ovako&amp;lt;/span&amp;gt;.&lt;br /&gt;
* Pritisnite na sledeće dugme kako biste ih sakrili ili otkrili: &amp;lt;span class=&amp;quot;unhide-spoilers unhide-solutions&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Prvi test ==&lt;br /&gt;
Na svakom pitanju je bilo ili moguće izabrati jedno ili više rešenja ili uneti odgovor u polje.&lt;br /&gt;
&lt;br /&gt;
=== 1. zadatak ===&lt;br /&gt;
Prilikom reupotrebe objektno orijentisanog koda izvođenjem, u načelu se stari kod (postojeća klasa - osnova za izvođenje):&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;ne mora menjati ni ponovo prevoditi i testirati.&amp;lt;/span&amp;gt;&lt;br /&gt;
# ne mora menjati, ali se mora ponovo prevoditi i testirati.&lt;br /&gt;
# ne mora menjati, mora ponovo prevoditi, ali se ne mora ponovo testirati.&lt;br /&gt;
# mora menjati i ponovo prevoditi i testirati.&lt;br /&gt;
# uopšte ne može iskoristiti.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 2. zadatak ===&lt;br /&gt;
Koja naredba omogućava korišćenje imena X iz prostora imena Y prostim imenovanjem X, ukoliko ne postoji konflikt imena?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;decltype Y;&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;using namespace Y;&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;using Y::X;&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;namespace Y.X;&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;using Y;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 3. zadatak ===&lt;br /&gt;
Šta ispisuje sledeći program na jeziku C++?&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
struct S1{&lt;br /&gt;
  int a;&lt;br /&gt;
  int b;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct S2{&lt;br /&gt;
  S1 a;&lt;br /&gt;
  int b[3][2];&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
int main() {&lt;br /&gt;
  S2 s={1,2,{{3},{},{4,5}}};&lt;br /&gt;
  std::cout&amp;lt;&amp;lt;s.b[2][0];&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Odgovor: &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;4&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 4. zadatak ===&lt;br /&gt;
Šta je dozvoljeno da stoji na mestu naredbe &amp;lt;code&amp;gt;###&amp;lt;/code&amp;gt;?&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
struct A{&lt;br /&gt;
    A(){}; //podrazumevani konstruktor strukture A&lt;br /&gt;
    int x;&lt;br /&gt;
    const int y=1;&lt;br /&gt;
    mutable int z;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
int main(){&lt;br /&gt;
    A a1;&lt;br /&gt;
    const A a2;&lt;br /&gt;
    ###&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;a2.z=1;&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;a1.y=1;&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;a2.y=1;&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;a1.x=1;&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;a1.z=1;&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;a2.x=1;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 5. zadatak ===&lt;br /&gt;
Koje funkcije su ispravne, jer vraćaju referencu na &amp;quot;živ&amp;quot; objekat?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;int&amp;amp; f(int &amp;amp;i){int r=i;  return r; }&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;int&amp;amp; f(int i){return i; }&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;int&amp;amp; f(int &amp;amp;i){return *new int(i); }&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;int&amp;amp; f(int &amp;amp;i){int &amp;amp;r=*new int(i); return r; }&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;int&amp;amp; f(int &amp;amp;i){return i; }&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;int&amp;amp; f(int &amp;amp;i){int r=*new int(i); return r; }&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 6. zadatak ===&lt;br /&gt;
Koji od sledećih iskaza su tačni na jeziku C++?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Klasa može imati više privatnih sekcija.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Iz metoda pozvanog za neki objekat se ne može pristupiti privatnom atributu drugog objekta iste klase.&lt;br /&gt;
# Javnoj sekciji klase mogu pristupati samo javni metodi klase, a privatnoj sekciji samo privatni metodi.&lt;br /&gt;
# Članovima u privatnoj sekciji klase može pristupati samo javni metod iste klase.&lt;br /&gt;
# Podrazumevana sekcija klase je javna.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 7. zadatak ===&lt;br /&gt;
Za nepromenljiv i nepostojan (&amp;lt;code&amp;gt;const volatile&amp;lt;/code&amp;gt;) objekat klase mogu da se pozivaju metodi te klase sa navedenim sledećim modifikatorima (koji određuju prirodu tekućeg objekta):&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;inline&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;const&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;volatile&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;const volatile&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# bez modifikatora&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 8. zadatak ===&lt;br /&gt;
Neka je data definicija klase Test&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
class Test{&lt;br /&gt;
    Test(){}&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Za koje od sledećih linija koda u funkciji main() će prevodilac prijaviti grešku?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;Test test;&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;Test* test = new Test();&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;Test test();&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;Test* test;&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;Test test{};&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 9. zadatak ===&lt;br /&gt;
Šta ispisuje dati program na jeziku C++?&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
&lt;br /&gt;
class A {&lt;br /&gt;
public:&lt;br /&gt;
    A() { cout &amp;lt;&amp;lt; &amp;quot;A&amp;quot;; }&lt;br /&gt;
    A(int a) { cout &amp;lt;&amp;lt; &amp;quot;A&amp;quot; &amp;lt;&amp;lt; a; }&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
class B {&lt;br /&gt;
    A a;&lt;br /&gt;
public:&lt;br /&gt;
    B() { cout &amp;lt;&amp;lt; &amp;quot;B&amp;quot;; }&lt;br /&gt;
    B(int b) { cout &amp;lt;&amp;lt; &amp;quot;B&amp;quot; &amp;lt;&amp;lt; b; }&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
class C {&lt;br /&gt;
    B b;&lt;br /&gt;
    A a;&lt;br /&gt;
public:&lt;br /&gt;
    C() { cout &amp;lt;&amp;lt; &amp;quot;C&amp;quot;; }&lt;br /&gt;
    C(int c) : a(c) { cout &amp;lt;&amp;lt; &amp;quot;C&amp;quot; &amp;lt;&amp;lt; c; }&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
int main() {&lt;br /&gt;
    C c(1);&lt;br /&gt;
    return 0;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Odgovor: &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;ABA1C1&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 10. zadatak ===&lt;br /&gt;
Koja tvrđenja su tačna za dati programski kod napisan na jeziku C++?&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
class A {&lt;br /&gt;
   int i;&lt;br /&gt;
public:&lt;br /&gt;
   A(int ii=2) { i = ii; }&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Klasa A ima konverzioni konstruktor.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Klasa A ima jedan konstruktor.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Objekat klase A se može stvoriti pozivanjem konstruktora koji nema nijedan parametar.&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Objekat klase A se može stvoriti pozivanjem konstruktora koji ima jedan argument.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Klasa A nema podrazumevani konstruktor.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== IR kolokvijum ==&lt;br /&gt;
=== 1. zadatak ===&lt;br /&gt;
Prostor na steku se dodeljuje:&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Lokalnim statičkim objektima&lt;br /&gt;
# Globalnim statičkim objektima&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Argumentima (parametrima) funkcija&amp;lt;/span&amp;gt;&lt;br /&gt;
# Dinamičkim objektima&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Lokalnim automatskim objektima&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 2. zadatak ===&lt;br /&gt;
Šta ispisuje sledeći program na programskom jeziku C++?&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
int&amp;amp; f(int &amp;amp;x) {&lt;br /&gt;
    return ++x;&lt;br /&gt;
}&lt;br /&gt;
int main() {&lt;br /&gt;
    int x = 1;&lt;br /&gt;
    int z = 1;&lt;br /&gt;
    auto y = f(z);&lt;br /&gt;
    y++;&lt;br /&gt;
    std::cout &amp;lt;&amp;lt; x &amp;lt;&amp;lt; y &amp;lt;&amp;lt; z;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# 133&lt;br /&gt;
# 233&lt;br /&gt;
# Programski kod se ne prevodi.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;132&amp;lt;/span&amp;gt;&lt;br /&gt;
# 232&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 3. zadatak ===&lt;br /&gt;
Koje tvrđenje je tačno?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Mehanizam preklapanje&amp;lt;sup&amp;gt;[sic]&amp;lt;/sup&amp;gt; imena funkcija je potpuno statički, koja funkcija će se pozvati određuje se u vreme prevođenja.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Mehanizam preklapanje&amp;lt;sup&amp;gt;[sic]&amp;lt;/sup&amp;gt; imena funkcija je potpuno dinamički, koja funkcija će se pozvati određuje se u vreme izvršavanja.&lt;br /&gt;
# Mehanizam preklapanje&amp;lt;sup&amp;gt;[sic]&amp;lt;/sup&amp;gt; imena funkcija je potpuno statički, koja funkcija će se pozvati određuje se u vreme izvršavanja.&lt;br /&gt;
# Mehanizam preklapanje&amp;lt;sup&amp;gt;[sic]&amp;lt;/sup&amp;gt; imena funkcija je potpuno dinamički, koja funkcija će se pozvati određuje se u vreme prevođenja.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 4. zadatak ===&lt;br /&gt;
Koja tvrđenja su tačna na programskom jeziku C++?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Metodi &amp;lt;code&amp;gt;int f() &amp;amp; { return 1; }&amp;lt;/code&amp;gt; i &amp;lt;code&amp;gt;int f() &amp;amp;&amp;amp; { return 3; }&amp;lt;/code&amp;gt; mogu postojati u istoj klasi.&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Metodi &amp;lt;code&amp;gt;int f() &amp;amp; { return 1; }&amp;lt;/code&amp;gt; i &amp;lt;code&amp;gt;int f() const &amp;amp; { return 3; }&amp;lt;/code&amp;gt; mogu postojati u istoj klasi.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Metodi &amp;lt;code&amp;gt;int f() &amp;amp; { return 1; }&amp;lt;/code&amp;gt; i &amp;lt;code&amp;gt;void f() &amp;amp; { }&amp;lt;/code&amp;gt; mogu postojati u istoj klasi.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 5. zadatak ===&lt;br /&gt;
Šta ispisuje sledeći program napisan na programskom jeziku C++? Ukoliko da se program ne prevodi unesite X.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
&lt;br /&gt;
class A&lt;br /&gt;
{&lt;br /&gt;
private:&lt;br /&gt;
    int b = 2;&lt;br /&gt;
    int c = 3;&lt;br /&gt;
public:&lt;br /&gt;
    A() : c(b+1), b(7) { b--; a = 2; }&lt;br /&gt;
    void pisi() { cout &amp;lt;&amp;lt; a &amp;lt;&amp;lt; b &amp;lt;&amp;lt; c; }&lt;br /&gt;
private:&lt;br /&gt;
    int a = 1;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
    A obj;&lt;br /&gt;
    obj.pisi();&lt;br /&gt;
    return 0;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Odgovor: &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;268&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 6. zadatak ===&lt;br /&gt;
Šta ispisuje dati program na jeziku C++?&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
&lt;br /&gt;
class A {&lt;br /&gt;
    static int stID;&lt;br /&gt;
    int ID = ++stID;&lt;br /&gt;
public:&lt;br /&gt;
    A() {}&lt;br /&gt;
    A(const A&amp;amp; a) {}&lt;br /&gt;
    A(A&amp;amp;&amp;amp; a) {}&lt;br /&gt;
    ~A() { cout &amp;lt;&amp;lt; ID; }&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
int A::stID = 0;&lt;br /&gt;
&lt;br /&gt;
void f1(A&amp;amp; a) {}&lt;br /&gt;
void f2(A a) {}&lt;br /&gt;
&lt;br /&gt;
int main() {&lt;br /&gt;
    A x;&lt;br /&gt;
    for(int i = 0; i &amp;lt; 3; i++){&lt;br /&gt;
        A* y = new A;&lt;br /&gt;
        if (i == 1) f2(*y);&lt;br /&gt;
        if (i == 2) f1(*y);&lt;br /&gt;
    }&lt;br /&gt;
    return 0;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Odgovor: &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;41&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 7. zadatak ===&lt;br /&gt;
Koja su tvrđenja tačna za prijateljske (&amp;lt;code&amp;gt;friend&amp;lt;/code&amp;gt;) funkcije i klase?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Ako je klasa &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; prijatelj klase &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt; i klasa &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt; prijatelj klase &amp;lt;code&amp;gt;C&amp;lt;/code&amp;gt;, onda je i klasa &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; prijatelj klase &amp;lt;code&amp;gt;C&amp;lt;/code&amp;gt;.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Funkcija &amp;lt;code&amp;gt;m()&amp;lt;/code&amp;gt; koja je prijatelj klasi &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; može biti globalna funkcija.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Ako klasa &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; proglasi klasu &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt; za prijatelja, metodi klase &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; imaju pristup do privatnih polja klase &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt;&lt;br /&gt;
# Prijateljstvo između klasa je simetrična relacija.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Funkcija &amp;lt;code&amp;gt;m()&amp;lt;/code&amp;gt; koja je prijatelj klasi &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; može biti metod klase &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt;.&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 8. zadatak ===&lt;br /&gt;
Koji od sledećih operatora se moraju preklopiti kao nestatički metodi u jeziku C++?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;operator[]&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;operator=&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;operator()&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;operator+&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;operator&amp;lt;&amp;lt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 9. zadatak ===&lt;br /&gt;
Povezati operatore sa odgovarajućom tipičnom primenom:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Operatori&lt;br /&gt;
|-&lt;br /&gt;
| Asocijativni pristup elementu zbirke &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;a.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Računanje vrednosti polinoma u tački &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;b.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pametni pokazivač &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;c.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|| &amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;operator[]&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;operator()&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;operator-&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 10. zadatak ===&lt;br /&gt;
Šta ispisuje sledeći program na programskom jeziku C+? Ukoliko se program ne prevodi u polje za odgovor treba upisati vrednost 0.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
&lt;br /&gt;
class B;&lt;br /&gt;
&lt;br /&gt;
class A {&lt;br /&gt;
public: &lt;br /&gt;
    A(int i) {}&lt;br /&gt;
    A(const B &amp;amp;b) { std::cout &amp;lt;&amp;lt; &amp;quot;1&amp;quot;; }&lt;br /&gt;
    A&amp;amp; operator=(const A&amp;amp; a) { std::cout &amp;lt;&amp;lt; &amp;quot;2&amp;quot;; return *this; }&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
class B {&lt;br /&gt;
public: &lt;br /&gt;
    operator A() { std::cout &amp;lt;&amp;lt; &amp;quot;3&amp;quot;; return 1; }&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
int main() {&lt;br /&gt;
    B b;&lt;br /&gt;
    A a(1);&lt;br /&gt;
    a=b;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Odgovor: &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;32&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Категорија:Рокови]]&lt;br /&gt;
[[Категорија:ОО1]]&lt;/div&gt;</summary>
		<author><name>Coa</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%9E%D0%9E1/%D0%9F%D1%80%D0%BE%D0%B1%D0%BD%D0%B8_%D1%82%D0%B5%D1%81%D1%82%D0%BE%D0%B2%D0%B8_2020&amp;diff=1484</id>
		<title>ОО1/Пробни тестови 2020</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%9E%D0%9E1/%D0%9F%D1%80%D0%BE%D0%B1%D0%BD%D0%B8_%D1%82%D0%B5%D1%81%D1%82%D0%BE%D0%B2%D0%B8_2020&amp;diff=1484"/>
		<updated>2020-12-09T10:28:16Z</updated>

		<summary type="html">&lt;p&gt;Coa: /* 9. zadatak */ Nabavio sam screenshot tačnog rešenja (ne znam koji su još operatori bili ponuđeni)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}&lt;br /&gt;
* Za pitanja sa više odgovora, tačni odgovori su &amp;lt;span class=&amp;quot;solution-example&amp;quot;&amp;gt;podebljani i uokvireni&amp;lt;/span&amp;gt;.&lt;br /&gt;
* Za pitanja za koje se odgovori unose, tačni odgovori su podvučeni i sakriveni: &amp;lt;span class=&amp;quot;spoiler-example&amp;quot;&amp;gt;ovako&amp;lt;/span&amp;gt;.&lt;br /&gt;
* Pritisnite na sledeće dugme kako biste ih sakrili ili otkrili: &amp;lt;span class=&amp;quot;unhide-spoilers unhide-solutions&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Prvi test ==&lt;br /&gt;
Na svakom pitanju je bilo ili moguće izabrati jedno ili više rešenja ili uneti odgovor u polje.&lt;br /&gt;
&lt;br /&gt;
=== 1. zadatak ===&lt;br /&gt;
Prilikom reupotrebe objektno orijentisanog koda izvođenjem, u načelu se stari kod (postojeća klasa - osnova za izvođenje):&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;ne mora menjati ni ponovo prevoditi i testirati.&amp;lt;/span&amp;gt;&lt;br /&gt;
# ne mora menjati, ali se mora ponovo prevoditi i testirati.&lt;br /&gt;
# ne mora menjati, mora ponovo prevoditi, ali se ne mora ponovo testirati.&lt;br /&gt;
# mora menjati i ponovo prevoditi i testirati.&lt;br /&gt;
# uopšte ne može iskoristiti.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 2. zadatak ===&lt;br /&gt;
Koja naredba omogućava korišćenje imena X iz prostora imena Y prostim imenovanjem X, ukoliko ne postoji konflikt imena?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;decltype Y;&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;using namespace Y;&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;using Y::X;&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;namespace Y.X;&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;using Y;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 3. zadatak ===&lt;br /&gt;
Šta ispisuje sledeći program na jeziku C++?&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
struct S1{&lt;br /&gt;
  int a;&lt;br /&gt;
  int b;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct S2{&lt;br /&gt;
  S1 a;&lt;br /&gt;
  int b[3][2];&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
int main() {&lt;br /&gt;
  S2 s={1,2,{{3},{},{4,5}}};&lt;br /&gt;
  std::cout&amp;lt;&amp;lt;s.b[2][0];&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Odgovor: &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;4&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 4. zadatak ===&lt;br /&gt;
Šta je dozvoljeno da stoji na mestu naredbe &amp;lt;code&amp;gt;###&amp;lt;/code&amp;gt;?&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
struct A{&lt;br /&gt;
    A(){}; //podrazumevani konstruktor strukture A&lt;br /&gt;
    int x;&lt;br /&gt;
    const int y=1;&lt;br /&gt;
    mutable int z;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
int main(){&lt;br /&gt;
    A a1;&lt;br /&gt;
    const A a2;&lt;br /&gt;
    ###&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;a2.z=1;&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;a1.y=1;&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;a2.y=1;&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;a1.x=1;&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;a1.z=1;&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;a2.x=1;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 5. zadatak ===&lt;br /&gt;
Koje funkcije su ispravne, jer vraćaju referencu na &amp;quot;živ&amp;quot; objekat?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;int&amp;amp; f(int &amp;amp;i){int r=i;  return r; }&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;int&amp;amp; f(int i){return i; }&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;int&amp;amp; f(int &amp;amp;i){return *new int(i); }&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;int&amp;amp; f(int &amp;amp;i){int &amp;amp;r=*new int(i); return r; }&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;int&amp;amp; f(int &amp;amp;i){return i; }&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;int&amp;amp; f(int &amp;amp;i){int r=*new int(i); return r; }&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 6. zadatak ===&lt;br /&gt;
Koji od sledećih iskaza su tačni na jeziku C++?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Klasa može imati više privatnih sekcija.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Iz metoda pozvanog za neki objekat se ne može pristupiti privatnom atributu drugog objekta iste klase.&lt;br /&gt;
# Javnoj sekciji klase mogu pristupati samo javni metodi klase, a privatnoj sekciji samo privatni metodi.&lt;br /&gt;
# Članovima u privatnoj sekciji klase može pristupati samo javni metod iste klase.&lt;br /&gt;
# Podrazumevana sekcija klase je javna.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 7. zadatak ===&lt;br /&gt;
Za nepromenljiv i nepostojan (&amp;lt;code&amp;gt;const volatile&amp;lt;/code&amp;gt;) objekat klase mogu da se pozivaju metodi te klase sa navedenim sledećim modifikatorima (koji određuju prirodu tekućeg objekta):&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;inline&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;const&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;volatile&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;const volatile&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# bez modifikatora&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 8. zadatak ===&lt;br /&gt;
Neka je data definicija klase Test&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
class Test{&lt;br /&gt;
    Test(){}&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Za koje od sledećih linija koda u funkciji main() će prevodilac prijaviti grešku?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;Test test;&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;Test* test = new Test();&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;Test test();&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;Test* test;&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;Test test{};&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 9. zadatak ===&lt;br /&gt;
Šta ispisuje dati program na jeziku C++?&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
&lt;br /&gt;
class A {&lt;br /&gt;
public:&lt;br /&gt;
    A() { cout &amp;lt;&amp;lt; &amp;quot;A&amp;quot;; }&lt;br /&gt;
    A(int a) { cout &amp;lt;&amp;lt; &amp;quot;A&amp;quot; &amp;lt;&amp;lt; a; }&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
class B {&lt;br /&gt;
    A a;&lt;br /&gt;
public:&lt;br /&gt;
    B() { cout &amp;lt;&amp;lt; &amp;quot;B&amp;quot;; }&lt;br /&gt;
    B(int b) { cout &amp;lt;&amp;lt; &amp;quot;B&amp;quot; &amp;lt;&amp;lt; b; }&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
class C {&lt;br /&gt;
    B b;&lt;br /&gt;
    A a;&lt;br /&gt;
public:&lt;br /&gt;
    C() { cout &amp;lt;&amp;lt; &amp;quot;C&amp;quot;; }&lt;br /&gt;
    C(int c) : a(c) { cout &amp;lt;&amp;lt; &amp;quot;C&amp;quot; &amp;lt;&amp;lt; c; }&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
int main() {&lt;br /&gt;
    C c(1);&lt;br /&gt;
    return 0;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Odgovor: &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;ABA1C1&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 10. zadatak ===&lt;br /&gt;
Koja tvrđenja su tačna za dati programski kod napisan na jeziku C++?&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
class A {&lt;br /&gt;
   int i;&lt;br /&gt;
public:&lt;br /&gt;
   A(int ii=2) { i = ii; }&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Klasa A ima konverzioni konstruktor.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Klasa A ima jedan konstruktor.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Objekat klase A se može stvoriti pozivanjem konstruktora koji nema nijedan parametar.&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Objekat klase A se može stvoriti pozivanjem konstruktora koji ima jedan argument.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Klasa A nema podrazumevani konstruktor.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== IR kolokvijum ==&lt;br /&gt;
=== 1. zadatak ===&lt;br /&gt;
Prostor na steku se dodeljuje:&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Lokalnim statičkim objektima&lt;br /&gt;
# Globalnim statičkim objektima&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Argumentima (parametrima) funkcija&amp;lt;/span&amp;gt;&lt;br /&gt;
# Dinamičkim objektima&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Lokalnim automatskim objektima&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 2. zadatak ===&lt;br /&gt;
Šta ispisuje sledeći program na programskom jeziku C++?&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
int&amp;amp; f(int &amp;amp;x) {&lt;br /&gt;
    return ++x;&lt;br /&gt;
}&lt;br /&gt;
int main() {&lt;br /&gt;
    int x = 1;&lt;br /&gt;
    int z = 1;&lt;br /&gt;
    auto y = f(z);&lt;br /&gt;
    y++;&lt;br /&gt;
    std::cout &amp;lt;&amp;lt; x &amp;lt;&amp;lt; y &amp;lt;&amp;lt; z;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# 133&lt;br /&gt;
# 233&lt;br /&gt;
# Programski kod se ne prevodi.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;132&amp;lt;/span&amp;gt;&lt;br /&gt;
# 232&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 3. zadatak ===&lt;br /&gt;
Koje tvrđenje je tačno?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Mehanizam preklapanje&amp;lt;sup&amp;gt;[sic]&amp;lt;/sup&amp;gt; imena funkcija je potpuno statički, koja funkcija će se pozvati određuje se u vreme prevođenja.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Mehanizam preklapanje&amp;lt;sup&amp;gt;[sic]&amp;lt;/sup&amp;gt; imena funkcija je potpuno dinamički, koja funkcija će se pozvati određuje se u vreme izvršavanja.&lt;br /&gt;
# Mehanizam preklapanje&amp;lt;sup&amp;gt;[sic]&amp;lt;/sup&amp;gt; imena funkcija je potpuno statički, koja funkcija će se pozvati određuje se u vreme izvršavanja.&lt;br /&gt;
# Mehanizam preklapanje&amp;lt;sup&amp;gt;[sic]&amp;lt;/sup&amp;gt; imena funkcija je potpuno dinamički, koja funkcija će se pozvati određuje se u vreme prevođenja.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 4. zadatak ===&lt;br /&gt;
Koja tvrđenja su tačna na programskom jeziku C++?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Metodi &amp;lt;code&amp;gt;int f() &amp;amp; { return 1; }&amp;lt;/code&amp;gt; i &amp;lt;code&amp;gt;int f() &amp;amp;&amp;amp; { return 3; }&amp;lt;/code&amp;gt; mogu postojati u istoj klasi.&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Metodi &amp;lt;code&amp;gt;int f() &amp;amp; { return 1; }&amp;lt;/code&amp;gt; i &amp;lt;code&amp;gt;int f() const &amp;amp; { return 3; }&amp;lt;/code&amp;gt; mogu postojati u istoj klasi.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Metodi &amp;lt;code&amp;gt;int f() &amp;amp; { return 1; }&amp;lt;/code&amp;gt; i &amp;lt;code&amp;gt;void f() &amp;amp; { }&amp;lt;/code&amp;gt; mogu postojati u istoj klasi.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 5. zadatak ===&lt;br /&gt;
Šta ispisuje sledeći program napisan na programskom jeziku C++? Ukoliko da se program ne prevodi unesite X.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
&lt;br /&gt;
class A&lt;br /&gt;
{&lt;br /&gt;
private:&lt;br /&gt;
    int b = 2;&lt;br /&gt;
    int c = 3;&lt;br /&gt;
public:&lt;br /&gt;
    A() : c(b+1), b(7) { b--; a = 2; }&lt;br /&gt;
    void pisi() { cout &amp;lt;&amp;lt; a &amp;lt;&amp;lt; b &amp;lt;&amp;lt; c; }&lt;br /&gt;
private:&lt;br /&gt;
    int a = 1;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
    A obj;&lt;br /&gt;
    obj.pisi();&lt;br /&gt;
    return 0;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Odgovor: &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;268&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 6. zadatak ===&lt;br /&gt;
Šta ispisuje dati program na jeziku C++?&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
&lt;br /&gt;
class A {&lt;br /&gt;
    static int stID;&lt;br /&gt;
    int ID = ++stID;&lt;br /&gt;
public:&lt;br /&gt;
    A() {}&lt;br /&gt;
    A(const A&amp;amp; a) {}&lt;br /&gt;
    A(A&amp;amp;&amp;amp; a) {}&lt;br /&gt;
    ~A() { cout &amp;lt;&amp;lt; ID; }&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
int A::stID = 0;&lt;br /&gt;
&lt;br /&gt;
void f1(A&amp;amp; a) {}&lt;br /&gt;
void f2(A a) {}&lt;br /&gt;
&lt;br /&gt;
int main() {&lt;br /&gt;
    A x;&lt;br /&gt;
    for(int i = 0; i &amp;lt; 3; i++){&lt;br /&gt;
        A* y = new A;&lt;br /&gt;
        if (i == 1) f2(*y);&lt;br /&gt;
        if (i == 2) f1(*y);&lt;br /&gt;
    }&lt;br /&gt;
    return 0;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Odgovor: &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;41&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 7. zadatak ===&lt;br /&gt;
Koja su tvrđenja tačna za prijateljske (&amp;lt;code&amp;gt;friend&amp;lt;/code&amp;gt;) funkcije i klase?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Ako je klasa &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; prijatelj klase &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt; i klasa &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt; prijatelj klase &amp;lt;code&amp;gt;C&amp;lt;/code&amp;gt;, onda je i klasa &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; prijatelj klase &amp;lt;code&amp;gt;C&amp;lt;/code&amp;gt;.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Funkcija &amp;lt;code&amp;gt;m()&amp;lt;/code&amp;gt; koja je prijatelj klasi &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; može biti globalna funkcija.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Ako klasa &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; proglasi klasu &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt; za prijatelja, metodi klase &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; imaju pristup do privatnih polja klase &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt;&lt;br /&gt;
# Prijateljstvo između klasa je simetrična relacija.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Funkcija &amp;lt;code&amp;gt;m()&amp;lt;/code&amp;gt; koja je prijatelj klasi &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; može biti metod klase &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt;.&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 8. zadatak ===&lt;br /&gt;
Koji od sledećih operatora se moraju preklopiti kao nestatički metodi u jeziku C++?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;operator[]&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;operator=&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;operator()&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;operator+&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;operator&amp;lt;&amp;lt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 9. zadatak ===&lt;br /&gt;
Povezati operatore sa odgovarajućom tipičnom primenom:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Operatori&lt;br /&gt;
|-&lt;br /&gt;
| Asocijativni pristup elementu zbirke &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;a.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Računanje vrednosti polinoma u tački &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;b.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pametni pokazivač &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;c.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|| &amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;operator[]&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;operator()&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;operator-&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 10. zadatak ===&lt;br /&gt;
&lt;br /&gt;
[[Категорија:Рокови]]&lt;br /&gt;
[[Категорија:ОО1]]&lt;/div&gt;</summary>
		<author><name>Coa</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%9E%D0%9E1/%D0%9F%D1%80%D0%BE%D0%B1%D0%BD%D0%B8_%D1%82%D0%B5%D1%81%D1%82%D0%BE%D0%B2%D0%B8_2020&amp;diff=1481</id>
		<title>ОО1/Пробни тестови 2020</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%9E%D0%9E1/%D0%9F%D1%80%D0%BE%D0%B1%D0%BD%D0%B8_%D1%82%D0%B5%D1%81%D1%82%D0%BE%D0%B2%D0%B8_2020&amp;diff=1481"/>
		<updated>2020-12-08T17:50:42Z</updated>

		<summary type="html">&lt;p&gt;Coa: IR 1. zadatak resenje Prosirenja C str. 14&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}&lt;br /&gt;
* Za pitanja sa više odgovora, tačni odgovori su &amp;lt;span class=&amp;quot;solution-example&amp;quot;&amp;gt;podebljani i uokvireni&amp;lt;/span&amp;gt;.&lt;br /&gt;
* Za pitanja za koje se odgovori unose, tačni odgovori su podvučeni i sakriveni: &amp;lt;span class=&amp;quot;spoiler-example&amp;quot;&amp;gt;ovako&amp;lt;/span&amp;gt;.&lt;br /&gt;
* Pritisnite na sledeće dugme kako biste ih sakrili ili otkrili: &amp;lt;span class=&amp;quot;unhide-spoilers unhide-solutions&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Prvi test ==&lt;br /&gt;
Na svakom pitanju je bilo ili moguće izabrati jedno ili više rešenja ili uneti odgovor u polje.&lt;br /&gt;
&lt;br /&gt;
=== 1. zadatak ===&lt;br /&gt;
Prilikom reupotrebe objektno orijentisanog koda izvođenjem, u načelu se stari kod (postojeća klasa - osnova za izvođenje):&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;ne mora menjati ni ponovo prevoditi i testirati.&amp;lt;/span&amp;gt;&lt;br /&gt;
# ne mora menjati, ali se mora ponovo prevoditi i testirati.&lt;br /&gt;
# ne mora menjati, mora ponovo prevoditi, ali se ne mora ponovo testirati.&lt;br /&gt;
# mora menjati i ponovo prevoditi i testirati.&lt;br /&gt;
# uopšte ne može iskoristiti.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 2. zadatak ===&lt;br /&gt;
Koja naredba omogućava korišćenje imena X iz prostora imena Y prostim imenovanjem X, ukoliko ne postoji konflikt imena?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;decltype Y;&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;using namespace Y;&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;using Y::X;&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;namespace Y.X;&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;using Y;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 3. zadatak ===&lt;br /&gt;
Šta ispisuje sledeći program na jeziku C++?&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
struct S1{&lt;br /&gt;
  int a;&lt;br /&gt;
  int b;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct S2{&lt;br /&gt;
  S1 a;&lt;br /&gt;
  int b[3][2];&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
int main() {&lt;br /&gt;
  S2 s={1,2,{{3},{},{4,5}}};&lt;br /&gt;
  std::cout&amp;lt;&amp;lt;s.b[2][0];&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Odgovor: &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;4&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 4. zadatak ===&lt;br /&gt;
Šta je dozvoljeno da stoji na mestu naredbe &amp;lt;code&amp;gt;###&amp;lt;/code&amp;gt;?&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
struct A{&lt;br /&gt;
    A(){}; //podrazumevani konstruktor strukture A&lt;br /&gt;
    int x;&lt;br /&gt;
    const int y=1;&lt;br /&gt;
    mutable int z;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
int main(){&lt;br /&gt;
    A a1;&lt;br /&gt;
    const A a2;&lt;br /&gt;
    ###&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;a2.z=1;&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;a1.y=1;&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;a2.y=1;&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;a1.x=1;&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;a1.z=1;&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;a2.x=1;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 5. zadatak ===&lt;br /&gt;
Koje funkcije su ispravne, jer vraćaju referencu na &amp;quot;živ&amp;quot; objekat?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;int&amp;amp; f(int &amp;amp;i){int r=i;  return r; }&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;int&amp;amp; f(int i){return i; }&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;int&amp;amp; f(int &amp;amp;i){return *new int(i); }&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;int&amp;amp; f(int &amp;amp;i){int &amp;amp;r=*new int(i); return r; }&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;int&amp;amp; f(int &amp;amp;i){return i; }&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;int&amp;amp; f(int &amp;amp;i){int r=*new int(i); return r; }&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 6. zadatak ===&lt;br /&gt;
Koji od sledećih iskaza su tačni na jeziku C++?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Klasa može imati više privatnih sekcija.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Iz metoda pozvanog za neki objekat se ne može pristupiti privatnom atributu drugog objekta iste klase.&lt;br /&gt;
# Javnoj sekciji klase mogu pristupati samo javni metodi klase, a privatnoj sekciji samo privatni metodi.&lt;br /&gt;
# Članovima u privatnoj sekciji klase može pristupati samo javni metod iste klase.&lt;br /&gt;
# Podrazumevana sekcija klase je javna.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 7. zadatak ===&lt;br /&gt;
Za nepromenljiv i nepostojan (&amp;lt;code&amp;gt;const volatile&amp;lt;/code&amp;gt;) objekat klase mogu da se pozivaju metodi te klase sa navedenim sledećim modifikatorima (koji određuju prirodu tekućeg objekta):&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;inline&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;const&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;volatile&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;const volatile&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# bez modifikatora&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 8. zadatak ===&lt;br /&gt;
Neka je data definicija klase Test&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
class Test{&lt;br /&gt;
    Test(){}&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Za koje od sledećih linija koda u funkciji main() će prevodilac prijaviti grešku?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;Test test;&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;Test* test = new Test();&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;Test test();&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;Test* test;&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;Test test{};&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 9. zadatak ===&lt;br /&gt;
Šta ispisuje dati program na jeziku C++?&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
&lt;br /&gt;
class A {&lt;br /&gt;
public:&lt;br /&gt;
    A() { cout &amp;lt;&amp;lt; &amp;quot;A&amp;quot;; }&lt;br /&gt;
    A(int a) { cout &amp;lt;&amp;lt; &amp;quot;A&amp;quot; &amp;lt;&amp;lt; a; }&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
class B {&lt;br /&gt;
    A a;&lt;br /&gt;
public:&lt;br /&gt;
    B() { cout &amp;lt;&amp;lt; &amp;quot;B&amp;quot;; }&lt;br /&gt;
    B(int b) { cout &amp;lt;&amp;lt; &amp;quot;B&amp;quot; &amp;lt;&amp;lt; b; }&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
class C {&lt;br /&gt;
    B b;&lt;br /&gt;
    A a;&lt;br /&gt;
public:&lt;br /&gt;
    C() { cout &amp;lt;&amp;lt; &amp;quot;C&amp;quot;; }&lt;br /&gt;
    C(int c) : a(c) { cout &amp;lt;&amp;lt; &amp;quot;C&amp;quot; &amp;lt;&amp;lt; c; }&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
int main() {&lt;br /&gt;
    C c(1);&lt;br /&gt;
    return 0;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Odgovor: &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;ABA1C1&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 10. zadatak ===&lt;br /&gt;
Koja tvrđenja su tačna za dati programski kod napisan na jeziku C++?&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
class A {&lt;br /&gt;
   int i;&lt;br /&gt;
public:&lt;br /&gt;
   A(int ii=2) { i = ii; }&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Klasa A ima konverzioni konstruktor.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Klasa A ima jedan konstruktor.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Objekat klase A se može stvoriti pozivanjem konstruktora koji nema nijedan parametar.&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Objekat klase A se može stvoriti pozivanjem konstruktora koji ima jedan argument.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Klasa A nema podrazumevani konstruktor.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== IR kolokvijum ==&lt;br /&gt;
=== 1. zadatak ===&lt;br /&gt;
Prostor na steku se dodeljuje:&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Lokalnim statičkim objektima&lt;br /&gt;
# Globalnim statičkim objektima&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Argumentima (parametrima) funkcija&amp;lt;/span&amp;gt;&lt;br /&gt;
# Dinamičkim objektima&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Lokalnim automatskim objektima&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 2. zadatak ===&lt;br /&gt;
Šta ispisuje sledeći program na programskom jeziku C++?&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
int&amp;amp; f(int &amp;amp;x) {&lt;br /&gt;
    return ++x;&lt;br /&gt;
}&lt;br /&gt;
int main() {&lt;br /&gt;
    int x = 1;&lt;br /&gt;
    int z = 1;&lt;br /&gt;
    auto y = f(z);&lt;br /&gt;
    y++;&lt;br /&gt;
    std::cout &amp;lt;&amp;lt; x &amp;lt;&amp;lt; y &amp;lt;&amp;lt; z;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# 133&lt;br /&gt;
# 233&lt;br /&gt;
# Programski kod se ne prevodi.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;132&amp;lt;/span&amp;gt;&lt;br /&gt;
# 232&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 3. zadatak ===&lt;br /&gt;
Koje tvrđenje je tačno?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Mehanizam preklapanje&amp;lt;sup&amp;gt;[sic]&amp;lt;/sup&amp;gt; imena funkcija je potpuno statički, koja funkcija će se pozvati određuje se u vreme prevođenja.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Mehanizam preklapanje&amp;lt;sup&amp;gt;[sic]&amp;lt;/sup&amp;gt; imena funkcija je potpuno dinamički, koja funkcija će se pozvati određuje se u vreme izvršavanja.&lt;br /&gt;
# Mehanizam preklapanje&amp;lt;sup&amp;gt;[sic]&amp;lt;/sup&amp;gt; imena funkcija je potpuno statički, koja funkcija će se pozvati određuje se u vreme izvršavanja.&lt;br /&gt;
# Mehanizam preklapanje&amp;lt;sup&amp;gt;[sic]&amp;lt;/sup&amp;gt; imena funkcija je potpuno dinamički, koja funkcija će se pozvati određuje se u vreme prevođenja.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 4. zadatak ===&lt;br /&gt;
Koja tvrđenja su tačna na programskom jeziku C++?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Metodi &amp;lt;code&amp;gt;int f() &amp;amp; { return 1; }&amp;lt;/code&amp;gt; i &amp;lt;code&amp;gt;int f() &amp;amp;&amp;amp; { return 3; }&amp;lt;/code&amp;gt; mogu postojati u istoj klasi.&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Metodi &amp;lt;code&amp;gt;int f() &amp;amp; { return 1; }&amp;lt;/code&amp;gt; i &amp;lt;code&amp;gt;int f() const &amp;amp; { return 3; }&amp;lt;/code&amp;gt; mogu postojati u istoj klasi.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Metodi &amp;lt;code&amp;gt;int f() &amp;amp; { return 1; }&amp;lt;/code&amp;gt; i &amp;lt;code&amp;gt;void f() &amp;amp; { }&amp;lt;/code&amp;gt; mogu postojati u istoj klasi.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 5. zadatak ===&lt;br /&gt;
Šta ispisuje sledeći program napisan na programskom jeziku C++? Ukoliko da se program ne prevodi unesite X.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
&lt;br /&gt;
class A&lt;br /&gt;
{&lt;br /&gt;
private:&lt;br /&gt;
    int b = 2;&lt;br /&gt;
    int c = 3;&lt;br /&gt;
public:&lt;br /&gt;
    A() : c(b+1), b(7) { b--; a = 2; }&lt;br /&gt;
    void pisi() { cout &amp;lt;&amp;lt; a &amp;lt;&amp;lt; b &amp;lt;&amp;lt; c; }&lt;br /&gt;
private:&lt;br /&gt;
    int a = 1;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
    A obj;&lt;br /&gt;
    obj.pisi();&lt;br /&gt;
    return 0;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Odgovor: &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;268&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 6. zadatak ===&lt;br /&gt;
Šta ispisuje dati program na jeziku C++?&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
&lt;br /&gt;
class A {&lt;br /&gt;
    static int stID;&lt;br /&gt;
    int ID = ++stID;&lt;br /&gt;
public:&lt;br /&gt;
    A() {}&lt;br /&gt;
    A(const A&amp;amp; a) {}&lt;br /&gt;
    A(A&amp;amp;&amp;amp; a) {}&lt;br /&gt;
    ~A() { cout &amp;lt;&amp;lt; ID; }&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
int A::stID = 0;&lt;br /&gt;
&lt;br /&gt;
void f1(A&amp;amp; a) {}&lt;br /&gt;
void f2(A a) {}&lt;br /&gt;
&lt;br /&gt;
int main() {&lt;br /&gt;
    A x;&lt;br /&gt;
    for(int i = 0; i &amp;lt; 3; i++){&lt;br /&gt;
        A* y = new A;&lt;br /&gt;
        if (i == 1) f2(*y);&lt;br /&gt;
        if (i == 2) f1(*y);&lt;br /&gt;
    }&lt;br /&gt;
    return 0;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Odgovor: &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;41&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 7. zadatak ===&lt;br /&gt;
Koja su tvrđenja tačna za prijateljske (&amp;lt;code&amp;gt;friend&amp;lt;/code&amp;gt;) funkcije i klase?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Ako je klasa &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; prijatelj klase &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt; i klasa &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt; prijatelj klase &amp;lt;code&amp;gt;C&amp;lt;/code&amp;gt;, onda je i klasa &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; prijatelj klase &amp;lt;code&amp;gt;C&amp;lt;/code&amp;gt;.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Funkcija &amp;lt;code&amp;gt;m()&amp;lt;/code&amp;gt; koja je prijatelj klasi &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; može biti globalna funkcija.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Ako klasa &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; proglasi klasu &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt; za prijatelja, metodi klase &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; imaju pristup do privatnih polja klase &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt;&lt;br /&gt;
# Prijateljstvo između klasa je simetrična relacija.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Funkcija &amp;lt;code&amp;gt;m()&amp;lt;/code&amp;gt; koja je prijatelj klasi &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; može biti metod klase &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt;.&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 8. zadatak ===&lt;br /&gt;
Koji od sledećih operatora se moraju preklopiti kao nestatički metodi u jeziku C++?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;operator[]&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;operator=&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;operator()&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;operator+&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;operator&amp;lt;&amp;lt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 9. zadatak ===&lt;br /&gt;
=== 10. zadatak ===&lt;br /&gt;
&lt;br /&gt;
[[Категорија:Рокови]]&lt;br /&gt;
[[Категорија:ОО1]]&lt;/div&gt;</summary>
		<author><name>Coa</name></author>
	</entry>
	<entry>
		<id>https://siwiki.rs/w/index.php?title=%D0%9E%D0%9E1/%D0%9F%D1%80%D0%BE%D0%B1%D0%BD%D0%B8_%D1%82%D0%B5%D1%81%D1%82%D0%BE%D0%B2%D0%B8_2020&amp;diff=1480</id>
		<title>ОО1/Пробни тестови 2020</title>
		<link rel="alternate" type="text/html" href="https://siwiki.rs/w/index.php?title=%D0%9E%D0%9E1/%D0%9F%D1%80%D0%BE%D0%B1%D0%BD%D0%B8_%D1%82%D0%B5%D1%81%D1%82%D0%BE%D0%B2%D0%B8_2020&amp;diff=1480"/>
		<updated>2020-12-08T17:48:19Z</updated>

		<summary type="html">&lt;p&gt;Coa: IR 3. zadatak rešenje - Proširenja C str. 60&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{tocright}}&lt;br /&gt;
* Za pitanja sa više odgovora, tačni odgovori su &amp;lt;span class=&amp;quot;solution-example&amp;quot;&amp;gt;podebljani i uokvireni&amp;lt;/span&amp;gt;.&lt;br /&gt;
* Za pitanja za koje se odgovori unose, tačni odgovori su podvučeni i sakriveni: &amp;lt;span class=&amp;quot;spoiler-example&amp;quot;&amp;gt;ovako&amp;lt;/span&amp;gt;.&lt;br /&gt;
* Pritisnite na sledeće dugme kako biste ih sakrili ili otkrili: &amp;lt;span class=&amp;quot;unhide-spoilers unhide-solutions&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Prvi test ==&lt;br /&gt;
Na svakom pitanju je bilo ili moguće izabrati jedno ili više rešenja ili uneti odgovor u polje.&lt;br /&gt;
&lt;br /&gt;
=== 1. zadatak ===&lt;br /&gt;
Prilikom reupotrebe objektno orijentisanog koda izvođenjem, u načelu se stari kod (postojeća klasa - osnova za izvođenje):&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;ne mora menjati ni ponovo prevoditi i testirati.&amp;lt;/span&amp;gt;&lt;br /&gt;
# ne mora menjati, ali se mora ponovo prevoditi i testirati.&lt;br /&gt;
# ne mora menjati, mora ponovo prevoditi, ali se ne mora ponovo testirati.&lt;br /&gt;
# mora menjati i ponovo prevoditi i testirati.&lt;br /&gt;
# uopšte ne može iskoristiti.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 2. zadatak ===&lt;br /&gt;
Koja naredba omogućava korišćenje imena X iz prostora imena Y prostim imenovanjem X, ukoliko ne postoji konflikt imena?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;decltype Y;&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;using namespace Y;&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;using Y::X;&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;namespace Y.X;&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;using Y;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 3. zadatak ===&lt;br /&gt;
Šta ispisuje sledeći program na jeziku C++?&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
struct S1{&lt;br /&gt;
  int a;&lt;br /&gt;
  int b;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct S2{&lt;br /&gt;
  S1 a;&lt;br /&gt;
  int b[3][2];&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
int main() {&lt;br /&gt;
  S2 s={1,2,{{3},{},{4,5}}};&lt;br /&gt;
  std::cout&amp;lt;&amp;lt;s.b[2][0];&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Odgovor: &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;4&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 4. zadatak ===&lt;br /&gt;
Šta je dozvoljeno da stoji na mestu naredbe &amp;lt;code&amp;gt;###&amp;lt;/code&amp;gt;?&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
struct A{&lt;br /&gt;
    A(){}; //podrazumevani konstruktor strukture A&lt;br /&gt;
    int x;&lt;br /&gt;
    const int y=1;&lt;br /&gt;
    mutable int z;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
int main(){&lt;br /&gt;
    A a1;&lt;br /&gt;
    const A a2;&lt;br /&gt;
    ###&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;a2.z=1;&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;a1.y=1;&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;a2.y=1;&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;a1.x=1;&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;a1.z=1;&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;a2.x=1;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 5. zadatak ===&lt;br /&gt;
Koje funkcije su ispravne, jer vraćaju referencu na &amp;quot;živ&amp;quot; objekat?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;int&amp;amp; f(int &amp;amp;i){int r=i;  return r; }&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;int&amp;amp; f(int i){return i; }&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;int&amp;amp; f(int &amp;amp;i){return *new int(i); }&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;int&amp;amp; f(int &amp;amp;i){int &amp;amp;r=*new int(i); return r; }&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;int&amp;amp; f(int &amp;amp;i){return i; }&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;int&amp;amp; f(int &amp;amp;i){int r=*new int(i); return r; }&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 6. zadatak ===&lt;br /&gt;
Koji od sledećih iskaza su tačni na jeziku C++?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Klasa može imati više privatnih sekcija.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Iz metoda pozvanog za neki objekat se ne može pristupiti privatnom atributu drugog objekta iste klase.&lt;br /&gt;
# Javnoj sekciji klase mogu pristupati samo javni metodi klase, a privatnoj sekciji samo privatni metodi.&lt;br /&gt;
# Članovima u privatnoj sekciji klase može pristupati samo javni metod iste klase.&lt;br /&gt;
# Podrazumevana sekcija klase je javna.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 7. zadatak ===&lt;br /&gt;
Za nepromenljiv i nepostojan (&amp;lt;code&amp;gt;const volatile&amp;lt;/code&amp;gt;) objekat klase mogu da se pozivaju metodi te klase sa navedenim sledećim modifikatorima (koji određuju prirodu tekućeg objekta):&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;inline&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;const&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;volatile&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;const volatile&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# bez modifikatora&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 8. zadatak ===&lt;br /&gt;
Neka je data definicija klase Test&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
class Test{&lt;br /&gt;
    Test(){}&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Za koje od sledećih linija koda u funkciji main() će prevodilac prijaviti grešku?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;Test test;&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;Test* test = new Test();&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;Test test();&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;Test* test;&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;Test test{};&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 9. zadatak ===&lt;br /&gt;
Šta ispisuje dati program na jeziku C++?&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
&lt;br /&gt;
class A {&lt;br /&gt;
public:&lt;br /&gt;
    A() { cout &amp;lt;&amp;lt; &amp;quot;A&amp;quot;; }&lt;br /&gt;
    A(int a) { cout &amp;lt;&amp;lt; &amp;quot;A&amp;quot; &amp;lt;&amp;lt; a; }&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
class B {&lt;br /&gt;
    A a;&lt;br /&gt;
public:&lt;br /&gt;
    B() { cout &amp;lt;&amp;lt; &amp;quot;B&amp;quot;; }&lt;br /&gt;
    B(int b) { cout &amp;lt;&amp;lt; &amp;quot;B&amp;quot; &amp;lt;&amp;lt; b; }&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
class C {&lt;br /&gt;
    B b;&lt;br /&gt;
    A a;&lt;br /&gt;
public:&lt;br /&gt;
    C() { cout &amp;lt;&amp;lt; &amp;quot;C&amp;quot;; }&lt;br /&gt;
    C(int c) : a(c) { cout &amp;lt;&amp;lt; &amp;quot;C&amp;quot; &amp;lt;&amp;lt; c; }&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
int main() {&lt;br /&gt;
    C c(1);&lt;br /&gt;
    return 0;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Odgovor: &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;ABA1C1&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 10. zadatak ===&lt;br /&gt;
Koja tvrđenja su tačna za dati programski kod napisan na jeziku C++?&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
class A {&lt;br /&gt;
   int i;&lt;br /&gt;
public:&lt;br /&gt;
   A(int ii=2) { i = ii; }&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Klasa A ima konverzioni konstruktor.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Klasa A ima jedan konstruktor.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Objekat klase A se može stvoriti pozivanjem konstruktora koji nema nijedan parametar.&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Objekat klase A se može stvoriti pozivanjem konstruktora koji ima jedan argument.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Klasa A nema podrazumevani konstruktor.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== IR kolokvijum ==&lt;br /&gt;
=== 1. zadatak ===&lt;br /&gt;
Prostor na steku se dodeljuje:&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Lokalnim statičkim objektima&lt;br /&gt;
# Globalnim statičkim objektima&lt;br /&gt;
# Argumentima (parametrima) funkcija&lt;br /&gt;
# Dinamičkim objektima&lt;br /&gt;
# Lokalnim automatskim objektima&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 2. zadatak ===&lt;br /&gt;
Šta ispisuje sledeći program na programskom jeziku C++?&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
int&amp;amp; f(int &amp;amp;x) {&lt;br /&gt;
    return ++x;&lt;br /&gt;
}&lt;br /&gt;
int main() {&lt;br /&gt;
    int x = 1;&lt;br /&gt;
    int z = 1;&lt;br /&gt;
    auto y = f(z);&lt;br /&gt;
    y++;&lt;br /&gt;
    std::cout &amp;lt;&amp;lt; x &amp;lt;&amp;lt; y &amp;lt;&amp;lt; z;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# 133&lt;br /&gt;
# 233&lt;br /&gt;
# Programski kod se ne prevodi.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;132&amp;lt;/span&amp;gt;&lt;br /&gt;
# 232&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 3. zadatak ===&lt;br /&gt;
Koje tvrđenje je tačno?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Mehanizam preklapanje&amp;lt;sup&amp;gt;[sic]&amp;lt;/sup&amp;gt; imena funkcija je potpuno statički, koja funkcija će se pozvati određuje se u vreme prevođenja.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Mehanizam preklapanje&amp;lt;sup&amp;gt;[sic]&amp;lt;/sup&amp;gt; imena funkcija je potpuno dinamički, koja funkcija će se pozvati određuje se u vreme izvršavanja.&lt;br /&gt;
# Mehanizam preklapanje&amp;lt;sup&amp;gt;[sic]&amp;lt;/sup&amp;gt; imena funkcija je potpuno statički, koja funkcija će se pozvati određuje se u vreme izvršavanja.&lt;br /&gt;
# Mehanizam preklapanje&amp;lt;sup&amp;gt;[sic]&amp;lt;/sup&amp;gt; imena funkcija je potpuno dinamički, koja funkcija će se pozvati određuje se u vreme prevođenja.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 4. zadatak ===&lt;br /&gt;
Koja tvrđenja su tačna na programskom jeziku C++?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Metodi &amp;lt;code&amp;gt;int f() &amp;amp; { return 1; }&amp;lt;/code&amp;gt; i &amp;lt;code&amp;gt;int f() &amp;amp;&amp;amp; { return 3; }&amp;lt;/code&amp;gt; mogu postojati u istoj klasi.&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Metodi &amp;lt;code&amp;gt;int f() &amp;amp; { return 1; }&amp;lt;/code&amp;gt; i &amp;lt;code&amp;gt;int f() const &amp;amp; { return 3; }&amp;lt;/code&amp;gt; mogu postojati u istoj klasi.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Metodi &amp;lt;code&amp;gt;int f() &amp;amp; { return 1; }&amp;lt;/code&amp;gt; i &amp;lt;code&amp;gt;void f() &amp;amp; { }&amp;lt;/code&amp;gt; mogu postojati u istoj klasi.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 5. zadatak ===&lt;br /&gt;
Šta ispisuje sledeći program napisan na programskom jeziku C++? Ukoliko da se program ne prevodi unesite X.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
&lt;br /&gt;
class A&lt;br /&gt;
{&lt;br /&gt;
private:&lt;br /&gt;
    int b = 2;&lt;br /&gt;
    int c = 3;&lt;br /&gt;
public:&lt;br /&gt;
    A() : c(b+1), b(7) { b--; a = 2; }&lt;br /&gt;
    void pisi() { cout &amp;lt;&amp;lt; a &amp;lt;&amp;lt; b &amp;lt;&amp;lt; c; }&lt;br /&gt;
private:&lt;br /&gt;
    int a = 1;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
    A obj;&lt;br /&gt;
    obj.pisi();&lt;br /&gt;
    return 0;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Odgovor: &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;268&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 6. zadatak ===&lt;br /&gt;
Šta ispisuje dati program na jeziku C++?&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
&lt;br /&gt;
class A {&lt;br /&gt;
    static int stID;&lt;br /&gt;
    int ID = ++stID;&lt;br /&gt;
public:&lt;br /&gt;
    A() {}&lt;br /&gt;
    A(const A&amp;amp; a) {}&lt;br /&gt;
    A(A&amp;amp;&amp;amp; a) {}&lt;br /&gt;
    ~A() { cout &amp;lt;&amp;lt; ID; }&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
int A::stID = 0;&lt;br /&gt;
&lt;br /&gt;
void f1(A&amp;amp; a) {}&lt;br /&gt;
void f2(A a) {}&lt;br /&gt;
&lt;br /&gt;
int main() {&lt;br /&gt;
    A x;&lt;br /&gt;
    for(int i = 0; i &amp;lt; 3; i++){&lt;br /&gt;
        A* y = new A;&lt;br /&gt;
        if (i == 1) f2(*y);&lt;br /&gt;
        if (i == 2) f1(*y);&lt;br /&gt;
    }&lt;br /&gt;
    return 0;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Odgovor: &amp;lt;span class=&amp;quot;spoiler&amp;quot;&amp;gt;41&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 7. zadatak ===&lt;br /&gt;
Koja su tvrđenja tačna za prijateljske (&amp;lt;code&amp;gt;friend&amp;lt;/code&amp;gt;) funkcije i klase?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# Ako je klasa &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; prijatelj klase &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt; i klasa &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt; prijatelj klase &amp;lt;code&amp;gt;C&amp;lt;/code&amp;gt;, onda je i klasa &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; prijatelj klase &amp;lt;code&amp;gt;C&amp;lt;/code&amp;gt;.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Funkcija &amp;lt;code&amp;gt;m()&amp;lt;/code&amp;gt; koja je prijatelj klasi &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; može biti globalna funkcija.&amp;lt;/span&amp;gt;&lt;br /&gt;
# Ako klasa &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; proglasi klasu &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt; za prijatelja, metodi klase &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; imaju pristup do privatnih polja klase &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt;&lt;br /&gt;
# Prijateljstvo između klasa je simetrična relacija.&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;Funkcija &amp;lt;code&amp;gt;m()&amp;lt;/code&amp;gt; koja je prijatelj klasi &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; može biti metod klase &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt;.&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 8. zadatak ===&lt;br /&gt;
Koji od sledećih operatora se moraju preklopiti kao nestatički metodi u jeziku C++?&lt;br /&gt;
&amp;lt;div class=&amp;quot;abc-list&amp;quot;&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;operator[]&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;operator=&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;span class=&amp;quot;solution&amp;quot;&amp;gt;&amp;lt;code&amp;gt;operator()&amp;lt;/code&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;operator+&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;operator&amp;lt;&amp;lt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 9. zadatak ===&lt;br /&gt;
=== 10. zadatak ===&lt;br /&gt;
&lt;br /&gt;
[[Категорија:Рокови]]&lt;br /&gt;
[[Категорија:ОО1]]&lt;/div&gt;</summary>
		<author><name>Coa</name></author>
	</entry>
</feed>