From 5405879419a249179d18f6093947e6e3848fe4ac Mon Sep 17 00:00:00 2001 From: Raphael Date: Wed, 7 May 2025 12:05:27 +0200 Subject: [PATCH] feat(09): starting to work on the Ford Johnson --- cpp09/ex02/PmergeMe.cpp | 28 +++++++++++++++++++++++++++- cpp09/ex02/PmergeMe.hpp | 17 +++++++++++++++-- 2 files changed, 42 insertions(+), 3 deletions(-) diff --git a/cpp09/ex02/PmergeMe.cpp b/cpp09/ex02/PmergeMe.cpp index e3aa479..1c26267 100644 --- a/cpp09/ex02/PmergeMe.cpp +++ b/cpp09/ex02/PmergeMe.cpp @@ -6,8 +6,34 @@ /* By: rparodi +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/05/01 14:45:19 by rparodi #+# #+# */ -/* Updated: 2025/05/01 14:45:32 by rparodi ### ########.fr */ +/* Updated: 2025/05/07 12:02:56 by rparodi ### ########.fr */ /* */ /* ************************************************************************** */ +#include "PmergeMe.hpp" +#include + +PmergeMe::PmergeMe() { + std::cout << CLR_GREEN << "Default constructor called" << CLR_RESET << std::endl; +} + +PmergeMe::~PmergeMe() { + std::cout << CLR_MAGENTA << "Destructor called" << CLR_RESET << std::endl; +} + +PmergeMe::PmergeMe(const PmergeMe ©) : _vec(copy._vec) { + std::cout << CLR_GREEN << "Copy constructor called" << CLR_RESET << std::endl; +} + +PmergeMe::PmergeMe(std::vector vec) : _vec(vec) { + std::cout << CLR_GREEN << "Constructor with vector called" << CLR_RESET << std::endl; +} + +PmergeMe& PmergeMe::operator=(const PmergeMe &assign) { + std::cout << CLR_GREEN << "Copy assignment operator called" << CLR_RESET << std::endl; + if (this != &assign) { + this->_vec = assign._vec; + } + return *this; +} diff --git a/cpp09/ex02/PmergeMe.hpp b/cpp09/ex02/PmergeMe.hpp index 7cebb40..59a2ec9 100644 --- a/cpp09/ex02/PmergeMe.hpp +++ b/cpp09/ex02/PmergeMe.hpp @@ -6,15 +6,28 @@ /* By: rparodi +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/05/01 14:45:25 by rparodi #+# #+# */ -/* Updated: 2025/05/02 16:12:02 by rparodi ### ########.fr */ +/* Updated: 2025/05/07 11:58:03 by rparodi ### ########.fr */ /* */ /* ************************************************************************** */ #pragma once -#include #include +#include +#include #include +#include + +class PmergeMe { + private: + std::vector _vec; + public: + PmergeMe(); + PmergeMe(const PmergeMe ©); + PmergeMe& operator=(const PmergeMe &assign); + PmergeMe(std::vector vec); + ~PmergeMe(); +}; #define CLR_RESET "\033[0m"