AlbumType.h
2.25 KB
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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
#pragma once
#include<string>
using namespace std;
#include"SimplifiedType.h"
#include"SortedLinkedList.h"
class AlbumType {
public:
AlbumType()
{
AlbumName = "";
ArtistName = "";
} //기본 생성자
~AlbumType()
{
} //기본 소멸자
/**
* @brief AlbumType의 생성자이다.
* @pre x
* @post AlbumType이 생성된다.
@param albumname 앨범명
@param artistname 이 앨범을 낸 아티스트명
*/
AlbumType(string albumname, string artistname)
{
AlbumName = albumname;
ArtistName = artistname;
}
AlbumType(const AlbumType& data)
{
AlbumName = data.AlbumName;
ArtistName = data.ArtistName;
}
/**
* @brief AlbumName 을 set한다.
* @pre x
* @post AlbumName is set
* @return x
*/
void SetAlbumName(string Name)
{
AlbumName = Name;
};
/**
* @brief ArtistName을 set한다.
* @pre x
* @post ArtistName is set
* @return x
*/
void SetArtistName(string Name)
{
ArtistName = Name;
};
/**
* @brief get AlbumName
* @pre AlbumName is set
* @post x
* @return AlbumName
*/
string GetAlbumName()
{
return AlbumName;
};
/**
* @brief getArtistName
* @pre ArtistName is set
* @post x
* @return ArtistName
*/
string GetArtistName()
{
return ArtistName;
};
/**
* @brief 비교 연산자
* @pre 비교하려는 두 앨범타입이 초기화되어 있어야한다
* @post x
* @param data 비교하려는 앨범타입
* @return 좌변이크면 false, 우변이크면 true
*/
bool operator<(AlbumType data)
{
if (AlbumName == data.GetAlbumName())
return (ArtistName < data.GetArtistName());
else
return (AlbumName < data.GetAlbumName());
};
/**
* @brief 비교 연산자
* @pre 비교하려는 두 앨범타입이 초기화되어 있어야한다
* @post x
* @param data 비교하려는 앨범타입
* @return 좌변이크면 true, 우변이크면 false
*/
bool operator>(AlbumType data)
{
if (AlbumName == data.GetAlbumName())
return (ArtistName > data.GetArtistName());
else
return (AlbumName > data.GetAlbumName());
};
/**
* @brief 등위연산자
* @pre 비교하려는 두 앨범타입이 초기화되어 있어야한다
* @post x
* @param data 비교하려는 앨범타입
* @return 두 항이 같으면 true 아니면 false
*/
bool operator==(AlbumType data) {
if (AlbumName == data.GetAlbumName() && ArtistName == data.GetArtistName())
return true;
else
return false;
};
private:
string AlbumName; //앨범 이름을 저장할 변수
string ArtistName; //앨범의 아티스트를 저장할 변수
};