Search
 
 
  Engleski
 
 
 
Open in this window (click to change)
Forum@DeGiorgi: Početna
Forum za podršku nastavi na PMF-MO
Login Registracija FAQ Smajlići Članstvo Pretražnik Forum@DeGiorgi: Početna

const
WWW:

Moja sarma
 
Započnite novu temu   Odgovorite na temu   printer-friendly view    Forum@DeGiorgi: Početna -> Kolegiji 2. godine -> Računarski praktikum 1
Prethodna tema :: Sljedeća tema  
Autor/ica Poruka
noa
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 14. 04. 2007. (22:28:08)
Postovi: (51)16
Sarma = la pohva - posuda
= 6 - 1

PostPostano: 18:07 sri, 2. 7. 2008    Naslov: const Citirajte i odgovorite

razlomak operator* (const razlomak &b) const
{
return razlomak(p*b.p, q*b.q);
}

bi li molim vas netko bio toliko dobar da mi ako je moguce na ovome objasni
-zasto mi treba prvi const (u parametru)
-zasto mi treba const na kraju
-kada mi to ne treba
-zasto je referenca na b (koliko sam skuzila to uvijek stavim ali ne znam zasto pa nije da mijenjam b)

sto vise istazujem to sam zbunjenija.
razlomak operator* (const razlomak &b) const
{
return razlomak(p*b.p, q*b.q);
}

bi li molim vas netko bio toliko dobar da mi ako je moguce na ovome objasni
-zasto mi treba prvi const (u parametru)
-zasto mi treba const na kraju
-kada mi to ne treba
-zasto je referenca na b (koliko sam skuzila to uvijek stavim ali ne znam zasto pa nije da mijenjam b)

sto vise istazujem to sam zbunjenija.


[Vrh]
Korisnički profil Pošaljite privatnu poruku
vsego
Site Admin
Site Admin


Pridružen/a: 06. 10. 2002. (22:07:09)
Postovi: (3562)16
Spol: zombi
Sarma = la pohva - posuda
854 = 1068 - 214
Lokacija: /sbin/init

PostPostano: 18:14 sri, 2. 7. 2008    Naslov: Citirajte i odgovorite

Prvi [tt]const[/tt] znaci "funkcija nece mijenjati [tt]b[/tt]" i koristan je da u funkciji ne pogrijesis i slucajno promijenis [tt]b[/tt], a mislim da i compiler ponekad izvede neku optimizaciju (zadrti C++-aši ce vjerojatno naci jos koristi od toga). 8)

Drugi [tt]const[/tt] znaci da funkcija nece mijenjati membere svog objekta, sto takodjer ima neke svrhe kao kontrolni mehanizam (opaska o zadrtim C++-ašima i ovdje vrijedi ;)).

Za ispravno izvrsavanje programa ti (skoro?) nikad ne treba, no smatra se da je dodavanje [tt]const[/tt]-ova "pisenju u C++ stilu" ili, kako bi neki kolege rekli, "u skadu s C++ paradigmom". :) Nije lose stvoriti naviku koristenja toga, no ne znam koliko se inzistira na tome na ispitu. :? Znam da podosta na bivsem (predbolonjskom) RP4; tamo su skidali neke bodove onima koji nisu koristili [tt]const[/tt], iako se takve sankcije nisu najavljivale. :?

Referenca je korisna jer referencira na originalni parametar, umjesto da ga kopira prilikom poziva funkcije. :) To dovodi do brzeg izvrsavanja programa i manje potrosnje memorije. 8)
Prvi const znaci "funkcija nece mijenjati b" i koristan je da u funkciji ne pogrijesis i slucajno promijenis b, a mislim da i compiler ponekad izvede neku optimizaciju (zadrti C++-aši ce vjerojatno naci jos koristi od toga). Cool

Drugi const znaci da funkcija nece mijenjati membere svog objekta, sto takodjer ima neke svrhe kao kontrolni mehanizam (opaska o zadrtim C++-ašima i ovdje vrijedi Wink).

Za ispravno izvrsavanje programa ti (skoro?) nikad ne treba, no smatra se da je dodavanje const-ova "pisenju u C++ stilu" ili, kako bi neki kolege rekli, "u skadu s C++ paradigmom". Smile Nije lose stvoriti naviku koristenja toga, no ne znam koliko se inzistira na tome na ispitu. Confused Znam da podosta na bivsem (predbolonjskom) RP4; tamo su skidali neke bodove onima koji nisu koristili const, iako se takve sankcije nisu najavljivale. Confused

Referenca je korisna jer referencira na originalni parametar, umjesto da ga kopira prilikom poziva funkcije. Smile To dovodi do brzeg izvrsavanja programa i manje potrosnje memorije. Cool



_________________
U pravilu ignoriram pitanja u krivim topicima i kodove koji nisu u [code]...[/code] blokovima.
Takodjer, OBJASNITE sto vas muci! "Sto mi je krivo?", bez opisa u cemu je problem, rijetko ce zadobiti moju paznju.
Drzim prodike
[Vrh]
Korisnički profil Pošaljite privatnu poruku
noa
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 14. 04. 2007. (22:28:08)
Postovi: (51)16
Sarma = la pohva - posuda
= 6 - 1

PostPostano: 18:20 sri, 2. 7. 2008    Naslov: Citirajte i odgovorite

eh hvala ti puno

( no znala sam da mi to ustvari ne treba :D )
eh hvala ti puno

( no znala sam da mi to ustvari ne treba Very Happy )


[Vrh]
Korisnički profil Pošaljite privatnu poruku
vsego
Site Admin
Site Admin


Pridružen/a: 06. 10. 2002. (22:07:09)
Postovi: (3562)16
Spol: zombi
Sarma = la pohva - posuda
854 = 1068 - 214
Lokacija: /sbin/init

PostPostano: 18:21 sri, 2. 7. 2008    Naslov: Citirajte i odgovorite

Realno, ni C++ ti ne treba... dosta je PERL. :twisted:

;)
Realno, ni C++ ti ne treba... dosta je PERL. Twisted Evil

Wink



_________________
U pravilu ignoriram pitanja u krivim topicima i kodove koji nisu u [code]...[/code] blokovima.
Takodjer, OBJASNITE sto vas muci! "Sto mi je krivo?", bez opisa u cemu je problem, rijetko ce zadobiti moju paznju.
Drzim prodike
[Vrh]
Korisnički profil Pošaljite privatnu poruku
Nori
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 01. 10. 2006. (18:41:07)
Postovi: (E5)16
Spol: žensko
Sarma = la pohva - posuda
22 = 34 - 12

PostPostano: 19:08 sri, 2. 7. 2008    Naslov: Citirajte i odgovorite

Kad smo vec kod nejasnoca:
u strukturi X kod predefiniranja operatora (+,-,*) smo rekli da mozemo te operatore koristiti i na npr. integerima ako te f-je za predefiniravanje definiramo kao friend (uz odgovarajuci konstruktor). Kako mogu postici da mi to s integerima radi i za operacije +=,-= ?!
Kad smo vec kod nejasnoca:
u strukturi X kod predefiniranja operatora (+,-,*) smo rekli da mozemo te operatore koristiti i na npr. integerima ako te f-je za predefiniravanje definiramo kao friend (uz odgovarajuci konstruktor). Kako mogu postici da mi to s integerima radi i za operacije +=,-= ?!



_________________
Meni mama neda da.... Pričam sa dječacima... meni mama neda to-A što?-Jer kaže da je opasno!
[Vrh]
Korisnički profil Pošaljite privatnu poruku
Luuka
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 13. 02. 2007. (20:34:54)
Postovi: (925)16
Spol: muško
Sarma = la pohva - posuda
188 = 301 - 113
Lokacija: Hakuna Matata

PostPostano: 19:19 sri, 2. 7. 2008    Naslov: Citirajte i odgovorite

Hm , možda da ta friend funkcija ima prototip

[code:1]int& operator+=(int &a, const int& b)[/code:1]

i onda povećat a i vratit a.

Možda... isprobaj 8)
Hm , možda da ta friend funkcija ima prototip

Kod:
int& operator+=(int &a, const int& b)


i onda povećat a i vratit a.

Možda... isprobaj Cool



_________________
"Bolje bi prolazio na faxu da sam na drogama nego na netu" - by a friend of mine
"Poslije spavanja doma spavanje bilo di mi je najdraža stvar" - by the same guy Very Happy
[Vrh]
Korisnički profil Pošaljite privatnu poruku Pošaljite e-mail
Nori
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 01. 10. 2006. (18:41:07)
Postovi: (E5)16
Spol: žensko
Sarma = la pohva - posuda
22 = 34 - 12

PostPostano: 21:16 sri, 2. 7. 2008    Naslov: Citirajte i odgovorite

Ne radi, mozda se to niti ne moze!?
Ne radi, mozda se to niti ne moze!?



_________________
Meni mama neda da.... Pričam sa dječacima... meni mama neda to-A što?-Jer kaže da je opasno!
[Vrh]
Korisnički profil Pošaljite privatnu poruku
Mad Wilson
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 29. 05. 2006. (22:51:14)
Postovi: (121)16
Sarma = la pohva - posuda
23 = 34 - 11

PostPostano: 21:20 sri, 2. 7. 2008    Naslov: Citirajte i odgovorite

Naravno da ne radi; [code:1]int& operator+=(int &a, const int& b)[/code:1]
nije friend klase [tt]int[/tt].
EDIT: Hmda... nije bas stvar u tome da je friend, nego se operatori na ugradenim tipovima opcenito ne mogu predefinirati (to sto ne moze biti friend je samo poslijedica).
Naravno da ne radi;
Kod:
int& operator+=(int &a, const int& b)

nije friend klase int.
EDIT: Hmda... nije bas stvar u tome da je friend, nego se operatori na ugradenim tipovima opcenito ne mogu predefinirati (to sto ne moze biti friend je samo poslijedica).



_________________
1 2 3 4


Zadnja promjena: Mad Wilson; 21:31 sri, 2. 7. 2008; ukupno mijenjano 1 put.
[Vrh]
Korisnički profil Pošaljite privatnu poruku
ma
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 27. 01. 2007. (12:06:50)
Postovi: (347)16
Spol: muško
Sarma = la pohva - posuda
58 = 89 - 31

PostPostano: 21:24 sri, 2. 7. 2008    Naslov: Citirajte i odgovorite

ne razumijem što pitaš. ajde napiši kako bi htjela moći koristiti taj operator (i napiši tipove svih varijabli koje koristiš).
ja mislim da je problem u tome što ti varijabli tipa integer želiš pridružiti nešto što nije integer. ako sam dobro shvatio. drugi smjer funkcionira jer ta struktura X može biti i inzeger. ako sam dobro shvatio. :?

edit: ok, sad vidim da sam fulao problem. zanemarite :D
ne razumijem što pitaš. ajde napiši kako bi htjela moći koristiti taj operator (i napiši tipove svih varijabli koje koristiš).
ja mislim da je problem u tome što ti varijabli tipa integer želiš pridružiti nešto što nije integer. ako sam dobro shvatio. drugi smjer funkcionira jer ta struktura X može biti i inzeger. ako sam dobro shvatio. Confused

edit: ok, sad vidim da sam fulao problem. zanemarite Very Happy



_________________
ima let u finish
[Vrh]
Korisnički profil Pošaljite privatnu poruku
5ra
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 13. 08. 2006. (21:34:08)
Postovi: (D5)16
Spol: žensko
Sarma = la pohva - posuda
10 = 31 - 21

PostPostano: 23:39 sri, 2. 7. 2008    Naslov: Citirajte i odgovorite

mislim da ti znaš o čem pričaš

ako se koristi ova strana int+=struktura normalno da ne radi jer ne postoji konstruktor koji prima strukturu i stvara int
ako se koristi ova strana struktura+=int to bi trebalo radit ako imaš konstruktor koji prima int i stvara strukturu
mislim da ti znaš o čem pričaš

ako se koristi ova strana int+=struktura normalno da ne radi jer ne postoji konstruktor koji prima strukturu i stvara int
ako se koristi ova strana struktura+=int to bi trebalo radit ako imaš konstruktor koji prima int i stvara strukturu
[Vrh]
Korisnički profil Pošaljite privatnu poruku
ma
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 27. 01. 2007. (12:06:50)
Postovi: (347)16
Spol: muško
Sarma = la pohva - posuda
58 = 89 - 31

PostPostano: 9:49 čet, 3. 7. 2008    Naslov: Citirajte i odgovorite

e pa to je ono što sam ja sažeo gore, ali mi se nekako čini da to nije početni problem. :violin:
e pa to je ono što sam ja sažeo gore, ali mi se nekako čini da to nije početni problem. Boo hoo!



_________________
ima let u finish
[Vrh]
Korisnički profil Pošaljite privatnu poruku
Prethodni postovi:   
Započnite novu temu   Odgovorite na temu   printer-friendly view    Forum@DeGiorgi: Početna -> Kolegiji 2. godine -> Računarski praktikum 1 Vremenska zona: GMT + 01:00.
Stranica 1 / 1.

 
Forum(o)Bir:  
Možete otvarati nove teme.
Možete odgovarati na postove.
Ne možete uređivati Vaše postove.
Ne možete izbrisati Vaše postove.
Ne možete glasovati u anketama.
You can attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2002 phpBB Group
Theme created by Vjacheslav Trushkin
HR (Cro) by Ančica Sečan