mirror of
				https://github.com/xfarrow/lasd.git
				synced 2025-06-05 21:49:14 +02:00 
			
		
		
		
	Library 5
This commit is contained in:
		| @@ -465,8 +465,8 @@ BTInOrderIterator<Data>::BTInOrderIterator(const BTInOrderIterator& itr){ | ||||
|  | ||||
| template <typename Data> | ||||
| BTInOrderIterator<Data>::BTInOrderIterator(BTInOrderIterator&& toMove) noexcept{ | ||||
|   std::move(curr, toMove.curr); | ||||
|   std::move(stack, toMove.stack); | ||||
|   std::swap(curr, toMove.curr); | ||||
|   std::swap(stack, toMove.stack); | ||||
| } | ||||
|  | ||||
| template <typename Data> | ||||
| @@ -484,8 +484,8 @@ BTInOrderIterator<Data>& BTInOrderIterator<Data>::operator=(const BTInOrderItera | ||||
|  | ||||
| template <typename Data> | ||||
| BTInOrderIterator<Data>& BTInOrderIterator<Data>::operator=(BTInOrderIterator&& toMove) noexcept{ | ||||
|   std::move(curr, toMove.curr); | ||||
|   std::move(stack, toMove.stack); | ||||
|   std::swap(curr, toMove.curr); | ||||
|   std::swap(stack, toMove.stack); | ||||
|   return *this; | ||||
| } | ||||
|  | ||||
|   | ||||
| @@ -134,7 +134,6 @@ BinaryTreeLnk<Data>& BinaryTreeLnk<Data>::operator=(const BinaryTreeLnk<Data>& t | ||||
|  | ||||
| template <typename Data> | ||||
| BinaryTreeLnk<Data>& BinaryTreeLnk<Data>::operator=(BinaryTreeLnk<Data>&& tree) noexcept{ | ||||
|   Clear(); | ||||
|   std::swap(size, tree.size); | ||||
|   std::swap(root, tree.root); | ||||
|   return *this; | ||||
|   | ||||
| @@ -117,12 +117,14 @@ BinaryTreeVec<Data>& BinaryTreeVec<Data>::operator=(const BinaryTreeVec<Data>& b | ||||
|  | ||||
| template <typename Data> | ||||
| BinaryTreeVec<Data>& BinaryTreeVec<Data>::operator=(BinaryTreeVec<Data>&& bt) noexcept{ | ||||
|   Clear(); | ||||
|   std::swap(size, bt.size); | ||||
|   std::swap(tree, bt.tree); | ||||
|   for(ulong i=0 ; i<size ; ++i){ | ||||
|     tree[i]->ReferenceToTree = this; | ||||
|   } | ||||
|   for(ulong j=0 ; j<bt.Size() ; ++j){ | ||||
|     (bt.tree[j])->ReferenceToTree = &bt; | ||||
|   } | ||||
|   return *this; | ||||
| } | ||||
|  | ||||
|   | ||||
							
								
								
									
										2
									
								
								librerie/exercise5/list/list.cpp
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
						
						
									
										2
									
								
								librerie/exercise5/list/list.cpp
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							| @@ -167,7 +167,7 @@ void List<Data>::InsertAtBack(const Data& data){ | ||||
| template <typename Data> | ||||
| void List<Data>::InsertAtBack(Data&& data){ | ||||
|   if(size == 0){ | ||||
|     InsertAtFront(data); | ||||
|     InsertAtFront(std::move(data)); | ||||
|   } | ||||
|   else{ | ||||
|     struct Node* last = new Node(std::move(data)); | ||||
|   | ||||
| @@ -37,7 +37,7 @@ QueueVec<Data>::QueueVec(const QueueVec& toCopy){ | ||||
|  | ||||
| template <typename Data> | ||||
| QueueVec<Data>::QueueVec(QueueVec&& toMove) noexcept{ | ||||
|     Clear(); | ||||
|     Clear(); // the moved Queue will be in a consistent state | ||||
|     std::swap(Elements, toMove.Elements); | ||||
|     std::swap(rear, toMove.rear); | ||||
|     std::swap(front, toMove.front); | ||||
|   | ||||
| @@ -52,7 +52,7 @@ void StackLst<Data>::Push(const Data& element){ | ||||
|  | ||||
| template <typename Data> | ||||
| void StackLst<Data>::Push(Data&& element) noexcept{ | ||||
|   List<Data>::InsertAtFront(element); | ||||
|   List<Data>::InsertAtFront(std::move(element)); | ||||
| } | ||||
|  | ||||
| template <typename Data> | ||||
|   | ||||
| @@ -44,7 +44,7 @@ StackVec<Data>& StackVec<Data>::operator=(const StackVec<Data>& copyFrom){ | ||||
| template <typename Data> | ||||
| StackVec<Data>& StackVec<Data>::operator=(StackVec<Data>&& moveFrom) noexcept{ | ||||
|   Vector<Data>::operator=(std::move(moveFrom)); | ||||
|   stackSize = moveFrom.Size(); | ||||
|   std::swap(stackSize, moveFrom.stackSize); | ||||
|   return *this; | ||||
| } | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user