consolidate all repos to one for archive
This commit is contained in:
35
semester_2/programiranje_2/naloga0701/README.md
Normal file
35
semester_2/programiranje_2/naloga0701/README.md
Normal file
@@ -0,0 +1,35 @@
|
||||
Izmislite si dva (izvirna) razreda (ni dovoljena uporaba razredov iz prejšnjih nalog in primerov iz predavanj). Vsak naj ima vsaj dve instančni spremenljivki, privzeti in nastavitveni konstruktor ter metodo toString.
|
||||
Ustvarite datoteko VectorUtil.h, kjer boste imeli več šablon fukcij. Datoteka naj vsebuje samo funkcije, brez razreda. Napišite (glej spodaj glavni program, vendar uporabite lastne razrede):
|
||||
Šablono funkcije fillDefault, ki prejme vektor kot argument in ga napolni z N (parameter šablone) objekti ( klic default konstruktorja).
|
||||
Šablono funkcije toString, ki prejme vektor kot argument in vse elemente s pomočjo metode toString združi v en string in ga vrne.
|
||||
Šablono funkcije print, ki prejme vektor kot argument in izpiše vse elemente z uporabo funkcije toString nad objekti.
|
||||
Šablono funkcije reverse, ki prejme vektor kot argument in vrne vektor z obratnim vrstnim redom (ni dovoljena uporaba knjižnic kot npr. std::reverse).
|
||||
Naredite specializacijo šablone funkcije fillDefault za en razred tako, da ne kličete privzetega konstruktorja, ampak nastavitveni konstruktor (naključno generirajte vrednosti).
|
||||
|
||||
Primer glavnega programa:
|
||||
|
||||
#include <vector>
|
||||
#include "ColorCode.h"
|
||||
#include "VectorUtil.h"
|
||||
#include "Point.h"
|
||||
|
||||
using namespace std;
|
||||
|
||||
int main() {
|
||||
vector<Point> list;
|
||||
cout << "Default generator of 40 objects" << endl;
|
||||
fillDefault<40>(list);
|
||||
|
||||
cout << "Prints by using toString function" << endl;
|
||||
print(list);
|
||||
cout << toString(list);
|
||||
|
||||
cout << "Return new list with Reversed order" << endl;
|
||||
vector<Point> list2 = reverse(list);
|
||||
print(list2);
|
||||
|
||||
vector<Grade> grades;
|
||||
fillDefault<12>(grades);
|
||||
print(grades);
|
||||
return 0;
|
||||
}
|
||||
Reference in New Issue
Block a user