From b7b56f5a8305a51bfc9b8dbaa578bad9d9f8590f Mon Sep 17 00:00:00 2001 From: hugogogo Date: Sat, 5 Feb 2022 16:11:23 +0100 Subject: [PATCH] d01 ex00 ok --- d01/ex00/Makefile | 64 +++++++++++++++++++++++++++++++++++++++ d01/ex00/Zombie.cpp | 13 ++++++++ d01/ex00/Zombie.hpp | 22 ++++++++++++++ d01/ex00/main.cpp | 25 +++++++++++++++ d01/ex00/newZombie.cpp | 12 ++++++++ d01/ex00/randomChump.cpp | 11 +++++++ d01/ex00/zombie | Bin 0 -> 19272 bytes 7 files changed, 147 insertions(+) create mode 100644 d01/ex00/Makefile create mode 100644 d01/ex00/Zombie.cpp create mode 100644 d01/ex00/Zombie.hpp create mode 100644 d01/ex00/main.cpp create mode 100644 d01/ex00/newZombie.cpp create mode 100644 d01/ex00/randomChump.cpp create mode 100755 d01/ex00/zombie diff --git a/d01/ex00/Makefile b/d01/ex00/Makefile new file mode 100644 index 0000000..3fee7a0 --- /dev/null +++ b/d01/ex00/Makefile @@ -0,0 +1,64 @@ +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # +# . name = value . name is case sensitive # +# VARIABLES . or name = value \ . use VPATH only for .c # +# . value . or .cpp # +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # + +NAME = zombie + +CC = clang++ +CFLAGS = -Wall -Wextra -Werror $(INCLUDES) -std=c++98 + +VPATH = $(D_SRCS) + +LIBS = + +INCLUDES = -I$(D_HEADERS) + +D_SRCS = . +SRCS = main.cpp \ + Zombie.cpp \ + newZombie.cpp \ + randomChump.cpp + +D_HEADERS = . +HEADERS = Zombie.hpp + +D_OBJS = builds +OBJS = $(SRCS:%.cpp=$(D_OBJS)/%.o) + +RM_D_OBJS = rm -rf $(D_OBJS) +ifeq "$(D_OBJS)" "." +RM_D_OBJS = +endif + + +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # +# . target: prerequisites . $@ : target # +# RULES . recipe . $< : 1st prerequisite # +# . recipe . $^ : all prerequisites # +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # + +all: $(NAME) + +$(D_OBJS)/%.o: %.cpp | $(D_OBJS) + $(CC) $(CFLAGS) -c $< -o $@ + +$(D_OBJS): + mkdir $@ + +$(OBJS): $(HEADERS:%=$(D_HEADERS)/%) + +$(NAME): $(OBJS) + $(CC) $(OBJS) -o $@ $(LIBS) + +clean: + rm -f $(OBJS) + +fclean: clean + rm -f $(NAME) + $(RM_D_OBJS) + +re: fclean all + +.PHONY : all clean fclean re bonus run valgrind diff --git a/d01/ex00/Zombie.cpp b/d01/ex00/Zombie.cpp new file mode 100644 index 0000000..93b1b0c --- /dev/null +++ b/d01/ex00/Zombie.cpp @@ -0,0 +1,13 @@ +#include "Zombie.hpp" + +Zombie::Zombie( std::string name ) { + this->_name = name; + std::cout << this->_name << " has been created" << std::endl; +} +Zombie::~Zombie() { + std::cout << this->_name << " has been destroyed" << std::endl; +} + +void Zombie::announce( void ) { + std::cout << this->_name << ": BraiiiiiiinnnzzzZ..." << std::endl; +} diff --git a/d01/ex00/Zombie.hpp b/d01/ex00/Zombie.hpp new file mode 100644 index 0000000..f8cc0af --- /dev/null +++ b/d01/ex00/Zombie.hpp @@ -0,0 +1,22 @@ +#ifndef ZOMBIE_HPP +# define ZOMBIE_HPP + +#include +#include + +class Zombie { + +public: + + Zombie( std::string name ); + ~Zombie(); + + void announce( void ); + +private: + + std::string _name; + +}; + +#endif diff --git a/d01/ex00/main.cpp b/d01/ex00/main.cpp new file mode 100644 index 0000000..15667f8 --- /dev/null +++ b/d01/ex00/main.cpp @@ -0,0 +1,25 @@ +#include "Zombie.hpp" + +Zombie* newZombie( std::string name ); +void randomChump( std::string name ); + +int main(void) +{ + Zombie* zombie_one; + Zombie* zombie_two; + + zombie_one = newZombie("Heap1"); + zombie_one->announce(); + delete zombie_one; + zombie_one = newZombie("Heap2"); + zombie_two = newZombie("Heap3"); + zombie_one->announce(); + zombie_two->announce(); + randomChump("Stack1"); + randomChump("Stack2"); + delete zombie_two; + randomChump("Stack3"); + delete zombie_one; + + return (0); +} diff --git a/d01/ex00/newZombie.cpp b/d01/ex00/newZombie.cpp new file mode 100644 index 0000000..117147e --- /dev/null +++ b/d01/ex00/newZombie.cpp @@ -0,0 +1,12 @@ +#include "Zombie.hpp" + +Zombie *newZombie( std::string name ) { + + Zombie *zomb; + + zomb = new Zombie( name ); + return zomb; + +} + + diff --git a/d01/ex00/randomChump.cpp b/d01/ex00/randomChump.cpp new file mode 100644 index 0000000..60bf2f8 --- /dev/null +++ b/d01/ex00/randomChump.cpp @@ -0,0 +1,11 @@ +#include "Zombie.hpp" + +void randomChump( std::string name ) { + + Zombie zomb( name ); + + zomb.announce(); + return; + +} + diff --git a/d01/ex00/zombie b/d01/ex00/zombie new file mode 100755 index 0000000000000000000000000000000000000000..f5f3f127cb06a4bd66cc8fca60dd070d5f04e0ba GIT binary patch literal 19272 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 JL&1TH{{!Me{U!ha literal 0 HcmV?d00001