Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

pitanje-genericke funckije

[es] :: C/C++ programiranje :: pitanje-genericke funckije

[ Pregleda: 1549 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

motronic16A
magistar elektrotehnike
Sarajevo

Član broj: 271986
Poruke: 27
188.127.104.*



Profil

icon pitanje-genericke funckije31.03.2011. u 15:52 - pre 159 meseci
Zadatak glasi:

Citat:
Napišite generičku funkciju koja ima dva parametra “v” i “v1”. Oba parametra su vektori
proizvoljnog ali istog tipa elemenata (tj. tip elemenata u oba vektora je isti) za koje se
pretpostavlja da se mogu porediti. Funkcija treba da iz vektora “v” odstrani sve elemente koji
se ne nalaze u vektoru “v1”, zadržavajući ostale elemente u istom poretku kakvi su bili prije
odstranjivanja. Funkcija ne vraća nikakvu vrijednost, već samo utiče na elemente parametra
“v” (koji pri tome, naravno, može promijeniti svoju veličinu). Na primjer, ako prije poziva
funkcije vektor “v” sadrži redom elemente 3, 8, 5, 6, 1, 4, 9, 7, 2, 2, 6, 4, 9, 1, 4, 8, 3, 6 i 5, a
vektor “v1” elemente 4, 0, 3, 4 i 2, nakon poziva funkcije vektor “v” treba da sadrži redom
elemente 8, 5, 6, 1, 9, 7, 6, 9, 1, 8, 6 i 5. Pri tome, funkcija ne smije u svom radu kreirati i
koristiti nikakve druge vektore ili nizove osim samih parametara “v” i “v1” (tj. nije
dozvoljeno koristiti nikakve pomoćne vektore). Napisanu funkciju demonstrirajte u testnom
programu koji će iz spiska riječi koje se unose sa tastature (te riječi treba čuvati u vektoru čiji
su elementi stringovi) odstraniti sve riječi sa drugog spiska riječi koji se također unosi putem
tastature i ispisati sve riječi iz prvog spiska nakon obavljenog odstranjivanja.


kako da postignem da deklarišem vektore proizvoljnog tipa?



 
Odgovor na temu

milanche
San Francisco

Član broj: 2447
Poruke: 1200
*.hsd1.ca.comcast.net.



+1001 Profil

icon Re: pitanje-genericke funckije31.03.2011. u 15:57 - pre 159 meseci
Pogledaj template (valjda se na srpskom zovu 'sabloni' ?).
http://www.cplusplus.com/doc/tutorial/templates/

Vektor je deo STL (Standard Template Library)
http://www.cplusplus.com/reference/stl/vector/
 
Odgovor na temu

nekoNiko
Student

Član broj: 236819
Poruke: 4
178.77.14.*



Profil

icon Re: pitanje-genericke funckije31.03.2011. u 23:52 - pre 159 meseci
Citat:
motronic16A: Zadatak glasi:



kako da postignem da deklarišem vektore proizvoljnog tipa?

Pise ti u predavanjima iz TP-a :)
 
Odgovor na temu

Mihajlo Cvetanović
Beograd

Moderator
Član broj: 37636
Poruke: 1249



+96 Profil

icon Re: pitanje-genericke funckije01.04.2011. u 09:33 - pre 159 meseci
Milanchetov link za template je dobar, ali ne objašnjava ono što OP-u treba. Template funkcija se u opštem slučaju definiše ovako

Code:
template<{X}> Y funkcija({Z})
{
   ...
}


Ovde je {X} skup template parametara (tipovi koji učestvuju u generisanju funkcije). Y je tip povratne vrednosti funkcije, {Z} je skup parametara funkcije. Ovde je bitno naglasiti da tipovi za Y i Z ne moraju da budu direktni elementi iz X, nego mogu da budu i izvedeni iz X. Ako u X imamo "typename v1" onda u Z možemo da imamo i "std::vector<v1>".
 
Odgovor na temu

milanche
San Francisco

Član broj: 2447
Poruke: 1200
*.hsd1.ca.comcast.net.



+1001 Profil

icon Re: pitanje-genericke funckije01.04.2011. u 13:26 - pre 159 meseci
Citat:
Mihajlo Cvetanović: Milanchetov link za template je dobar, ali ne objašnjava ono što OP-u treba.


...najvise zato sto mi je delovalo da mu je vise potrebnija sira orjentacija, manje nego detalji koje vrlo verovatno moze da razresi i sam.
 
Odgovor na temu

[es] :: C/C++ programiranje :: pitanje-genericke funckije

[ Pregleda: 1549 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.