" ?"
, , , . . (copy-ctor, op ) , , , (, , , . ).
" , . , - , ?"
, , :
Mystack<T>::Mystack(size_t size = N)
{
input = new T[size];
top = 0;
capacity = size;
}
- . , :
input = new T[source.capacity];
, input ? , . .
" , , , ".
input, copy-ctor. input - ( , ). , .
" , . ".
copy-swap - , "" . , , .
( , ), . :
template <class T>
void Mystack<T>::swap(Mystack<T>& src)
{
std::swap(input, src.input);
std::swap(top, src.top);
std::swap(capacity, src.capacity);
}
:
template <class T>
Mystack<T> & Mystack<T>::operator=(Mystack<T> src)
{
this->swap(src);
return *this;
}
( copy-ctor) . , - , , . , , ( )
, , , (x = x;) . , . x = x;, , , .
. , , , .