-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathContact.h
49 lines (40 loc) · 1.13 KB
/
Contact.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#pragma once
#ifndef BASIC_LIB
#define BASIC_LIB
#include <iostream>
#include <string>
#endif // !BASIC_LIB
#include "Address.h"
class Contact {
private:
std::string first_name;
std::string last_name;
std::string mobile_number;
std::string email_address;
Address* address;
public:
bool equals(const Contact& contact);
Contact* copy_contact();
Contact();
Contact(std::string first_name, std::string last_name, std::string mobile_number,
std::string email_address, Address* address);
//Setters
void setFirst_Name(std::string first_name);
void setLast_Name(std::string last_name);
void setMobile_Number(std::string mobile_number);
void setEmail_address(std::string emailemail_address);
//Setting Adress
void setAddress(Address add);
//Getters
std::string getFirst_Name();
std::string getLast_Name();
std::string getMobile_Number();
std::string getEmail_Address();
//Address Printing Fucntion
void AddressPrint();
//returning address
Address* GetAddressObj();
friend std::istream& operator >>(std::istream& input, Contact& contact);
void isinputvalid(std::string input, std::string type);
Contact(Contact& contact);
};