Skocz do zawartości
emes125

Niedziałający Szablon Klasy C++

Rekomendowane odpowiedzi

Rzecz w tym, że nie działa program... Pierwotnie była to lista. Teraz dołożyłem do niej szablon i już się kicha... Pomożecie ?

 

 

#include <iostream>

using namespace std;

static int i=0; //licznbik

template <typename mojtyp>

class A

{

public:

A *wsk_p, *wsk_n;

int liczba;

mojtyp zmienna1;

A() { liczba = i++;}

 

void mod_zm1(){

cout<<"Podaj nowa wartosc dla zmiennej1"<<endl;

int wart; //ale podejrzewam, ze tutaj moge dac inny typ...

cin>> wart;

wart = zmienna1;

cout<<"Nowa wartosc zmiennej1 to: "<< zmienna1 << endl;

}

};

 

int a=0;

A *poczatek = NULL;

A *koniec = NULL;

 

 

 

 

 

void wstaw_p(){

A *obiekt = new A;

if (a)

{

obiekt->wsk_n = poczatek;

obiekt->wsk_p = NULL;

poczatek->wsk_p = obiekt;

poczatek = obiekt;

a++;

}

else

{

obiekt->wsk_p= NULL;

obiekt->wsk_n= NULL;

a++;

poczatek = koniec = obiekt;

}}

 

void sortuj()

{

if(a)

{

A *wsk = poczatek;

for(int z = 1; z < a; z++)

{

while(wsk->wsk_n)

{

if(wsk->liczba > wsk->wsk_n->liczba)

{

int schowek = wsk->liczba;

wsk->liczba = wsk->wsk_n->liczba;

wsk->wsk_n->liczba = schowek;

wsk = wsk->wsk_n;

}

else

{

wsk = wsk->wsk_n;

}

}

wsk = poczatek;

}

cout << "Lista posortowana!" << endl;

}

else

{

cout << "Pusta lista, nie ma co sortowac" << endl;

}

system("PAUSE");

 

}

 

void wstaw_k(){

A *obiekt = new A;

if (a)

{

obiekt->wsk_n = NULL;

obiekt->wsk_p = koniec;

koniec->wsk_n = obiekt;

koniec = obiekt;

a++;

}

else

{

obiekt->wsk_p= NULL;

obiekt->wsk_n= NULL;

a++;

poczatek = koniec = obiekt;

}

}

void wyswietl()

{

A *pomocniczy = poczatek;

while(pomocniczy->wsk_n)

{

cout << "numer = " << pomocniczy->liczba << endl;

pomocniczy= pomocniczy->wsk_n;

}

cout << "numer = " << pomocniczy->liczba << endl;

}

int menu()

{

int wybor;

cout << "wybierz co chcesz zrobic: "<< endl;

cout << "1 - wstaw na poczatek listy" << endl;

cout << "2 - wstaw na koniec listy" << endl;

cout << "3 - wyswietl liste" << endl;

cout << "4 - sortuj liste" << endl;

cout << "5 - modyfikuj zmienna1" << endl;

cout << "0 - wyjscie z programu" << endl;

cin >> wybor;

switch(wybor)

{

case 1:

wstaw_p();

return wybor;

 

case 2:

wstaw_k();

return wybor;

 

case 3:

wyswietl();

return wybor;

 

case 4:

sortuj();

return wybor;

 

case 5:

{void A::mod_zm1();

return wybor;}

 

case 0:

 

return wybor;

 

}}

 

 

int main()

{

while(menu());

}

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

Ładowanie


×
×
  • Dodaj nową pozycję...