From c10aa969c60cedef893146307fa319250901465a Mon Sep 17 00:00:00 2001 From: Charles Cabergs Date: Fri, 11 Dec 2020 12:11:50 +0100 Subject: Fixing cpp04 according to correction --- cpp04/ex00/main.cpp | 36 ++++++++++++++++++++++++++++++++++-- 1 file changed, 34 insertions(+), 2 deletions(-) (limited to 'cpp04/ex00/main.cpp') diff --git a/cpp04/ex00/main.cpp b/cpp04/ex00/main.cpp index d8eb897..f585dab 100644 --- a/cpp04/ex00/main.cpp +++ b/cpp04/ex00/main.cpp @@ -6,7 +6,7 @@ /* By: charles +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2020/04/13 20:47:34 by charles #+# #+# */ -/* Updated: 2020/11/17 08:42:34 by cacharle ### ########.fr */ +/* Updated: 2020/12/11 10:29:53 by cacharle ### ########.fr */ /* */ /* ************************************************************************** */ @@ -35,6 +35,10 @@ int main() Sorcerer s_copied(s); Sorcerer s_assigned("foo", "yep clock"); s_assigned = s; + Sorcerer *s_ptr = new Sorcerer("Foo", "Bar"); + std::cout << *s_ptr; + s_ptr->polymorph(Peon("Yep")); + delete s_ptr; std::cout << "Copied: " << s_copied; std::cout << "Assigned: " << s_assigned; } @@ -47,6 +51,10 @@ int main() Victim v_copied(v); Victim v_assigned("bar"); v_assigned = v; + Victim *v_ptr = new Victim("Foo"); + std::cout << *v_ptr; + v_ptr->getPolymorphed(); + delete v_ptr; std::cout << "Copied: " << v_copied; std::cout << "Assigned: " << v_assigned; v.getPolymorphed(); @@ -56,14 +64,38 @@ int main() { std::cout << "==================== PEON =====================" << std::endl; - Peon p("Victoire"); + Peon p("Pionnier"); Peon p_copied(p); Peon p_assigned("baz"); p_assigned = p; + Peon *p_ptr = new Peon("Foo"); + std::cout << *p_ptr; + p_ptr->getPolymorphed(); + delete p_ptr; std::cout << "Copied: " << p_copied; std::cout << "Assigned: " << p_assigned; p.getPolymorphed(); } + std::cout << std::endl; + + { + std::cout << "==================== RAT =====================" << std::endl; + Rat r("Ratteur"); + std::cout << r; + Rat r_copied(r); + Rat r_assigned("baz"); + r_assigned = r; + Rat *r_ptr = new Rat("Foo"); + std::cout << *r_ptr; + r_ptr->getPolymorphed(); + delete r_ptr; + std::cout << "Copied: " << r_copied; + std::cout << "Assigned: " << r_assigned; + r.getPolymorphed(); + Sorcerer s("Sorcier", "Yes man"); + s.polymorph(r); + } + return 0; } -- cgit