12.07.2015 Views

C++ - VideoTutorials-bg.com

C++ - VideoTutorials-bg.com

C++ - VideoTutorials-bg.com

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

конструктор за присвояванеKонструкторът за присвояванеstack(stack const & r);откопирва стека r в неявния параметър и ще го реализираме последния начин:stack::stack(stack const & r){copy(r);}където copy(r) ще дефинираме като член-функция на stack и тя щереализира копиране на стека r в неявния параметър.операторна функция за присвояванеЩе я реализираме така:stack& stack::operator=(stack const& r){if (this != &r){delstack();copy(r);}return *this;}Копирането ще реализираме чрез член-функцията copy(stack const&r). За целта ще сканираме елементите на r (без да ги разрушаваме)и ще ги запишем на друго място в динамичната памет.void stack::copy(stack const & r){if (r.start) // r не е празен{elem *p = r.start, *q = NULL, *s=NULL;start = new elem;start->inf = p->inf;start->link = q;q = start;p = p->link;while (p){s = new elem;s->inf = p->inf;q->link = s;q = s;p = p->link;}q->link = NULL;84

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!