Compare commits

...

2 Commits

Author SHA1 Message Date
Camille Chauvet
908691c5da fix: leaks: deletes first contact befort replace it 2023-05-22 17:34:19 +00:00
Camille Chauvet
7bc9220a7a fix: search() call the destructor of phone_book 2023-05-22 17:08:28 +00:00
2 changed files with 6 additions and 4 deletions

View File

@ -2,6 +2,7 @@
#include <cstddef>
#include <iomanip>
#include <iostream>
#include <iterator>
#include <sstream>
#include <string>
@ -20,6 +21,7 @@ void PhoneBook::add_contact(Contact *new_contact)
{
size_t i;
std::cout << std::endl << this->len << std::endl;
if (this->len < 8)
{
this->contacts[this->len] = new_contact;
@ -27,7 +29,8 @@ void PhoneBook::add_contact(Contact *new_contact)
}
else
{
for (i = this->len; i != 0; i--) {
delete this->contacts[0];
for (i = this->len - 1; i > 0; i--) {
this->contacts[i] = this->contacts[i - 1];
}
this->contacts[0] = new_contact;

View File

@ -3,6 +3,7 @@
#include <cstdlib>
#include <iostream>
#include <bits/stdc++.h>
#include <ostream>
#include <sstream>
#include <string>
#include "../include/PhoneBook.hpp"
@ -34,10 +35,9 @@ Contact* read_contact()
return (NULL);
return (new Contact(first_name, last_name, nickname, phone_number, darkest_secret));
}
Contact* search(PhoneBook phone_book)
Contact* search(PhoneBook &phone_book)
{
int index;
std::string index_str;
@ -60,7 +60,6 @@ int main()
Contact* contact;
PhoneBook phone_book;
phone_book = PhoneBook();
while (true)
{
std::cout << "command: ";