Stos na szablonach.

Stos na szablonach.
CH
  • Rejestracja:około 10 lat
  • Ostatnio:prawie 10 lat
  • Lokalizacja:Lublin
  • Postów:9
0

Nie potrawie zaimplementować stosu w głównej funkcji. Próbowałem wszystkich możliwości, sposobów. Zdaję sobie sprawę z tego że nauka programowania w ten sposób nie jest efektowna, czyli: spróbowania każdego sposobu jaki się wymyśli i znajdzie w internecie aż do skutku, ale jak widzę nie zawsze się uda. Może mi ktoś pomóc lub przynajmniej podpowiedzieć jak to zrobić ??

Kopiuj
#include<iostream>

using namespace std;

template <class TD> class STOS
{
	
	struct element
	{
	
	TD dana;
	element * nast;
	element(TD x, element * w){
		dana = x;
		nast = w;
	}
};

element * wierzch;
public:
	
	STOS()
	{
		wierzch = NULL;
	}
	
	bool Pusty()const
	{
		return wierzch == NULL;
	}
	
	void DoStosu(TD d)
	{
		wierzch = new element (d,wierzch);
	}
	
	TD ZeStosu();
	~STOS();
};
	
	template <class TD>
	TD STOS<TD>::ZeStosu()
	{
		TD rob = wierzch -> dana;
		element t = wierzch -> nast;
		delete wierzch;
		wierzch = t;
		return rob;
	}
	
	template <class TD>
	 STOS<TD>::~STOS(){
		while(wierzch != NULL)
		ZeStosu();
	}
	
int main()
{

	system("pause");
	return 0;
} 
twonek
  • Rejestracja:prawie 11 lat
  • Ostatnio:prawie 2 lata
  • Postów:2500
0

Ale o co chodzi? Jest jeden mały błąd przy:

Kopiuj
element t = wierzch -> nast;

powinno być element* t: http://ideone.com/Ap9KQi

W czym więc problem?

CH
  • Rejestracja:około 10 lat
  • Ostatnio:prawie 10 lat
  • Lokalizacja:Lublin
  • Postów:9
0

W wywołaniu wszystkich funkcji w funkcji mian.

twonek
  • Rejestracja:prawie 11 lat
  • Ostatnio:prawie 2 lata
  • Postów:2500
0

To pokaż kod (te wywołania w main), albo popatrz na mój link do ideone.

edytowany 1x, ostatnio: twonek
CH
  • Rejestracja:około 10 lat
  • Ostatnio:prawie 10 lat
  • Lokalizacja:Lublin
  • Postów:9
0

Oczekiwałem że to będzie z szablonami te wywołania bardziej skomplikowane.. i może przez to się na tym zaciąłem :D
Dziękuje.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.