제목이있는 앨범, 나왔던 연도 및 앨범의 노래가 있습니다.어떻게 많은 값을 갖는 연관 배열을 가질 수 있습니까
std::string alb_name[256]['title', 'year', 'songs'];
하지만 난 노래 연관 배열은 최대 20 곡을 보유 할 :
은 내 배열은 다음과 같이 설정되어 있습니다. 쉬운 방법이 있나요? 나는 1 클래스 프로그래밍이고 그것을 할 수있는 방법을 알아낼 수 없습니다. 어떤 도움이 필요합니다.
제목이있는 앨범, 나왔던 연도 및 앨범의 노래가 있습니다.어떻게 많은 값을 갖는 연관 배열을 가질 수 있습니까
std::string alb_name[256]['title', 'year', 'songs'];
하지만 난 노래 연관 배열은 최대 20 곡을 보유 할 :
은 내 배열은 다음과 같이 설정되어 있습니다. 쉬운 방법이 있나요? 나는 1 클래스 프로그래밍이고 그것을 할 수있는 방법을 알아낼 수 없습니다. 어떤 도움이 필요합니다.
:
이map<string, Album> albums;
Album album;
album.title = "Acoustic Sketches";
album.year = "1996";
album.tracks.push_back("Metamorphosis");
album.tracks.push_back("Rivulets");
//.. etc
albums[album.title] = album;
이것은 매우 유용하지만 오류가 발생합니다. " '벡터'는 유형을 지정하지 않습니다." – user1082764
예가 완전하지 않습니다. 'vector'와'map'은 C++ 표준 라이브러리의 일부입니다. 사용중인 모든 문서에 있어야합니다. –
C++에는 연관 배열로 작동하는 std::map
이라는 것이 있습니다.
#include <map>
#include <string>
#include <vector>
struct AlbumData
{
int year;
std::vector<std::string> songs;
};
std::map<std::string, AlbumData> albums;
AlbumData d;
d.year = 1966;
d.songs.push_back("A Day in the Life");
d.songs.push_back("When I'm 64");
albums["Sgt Pepper's Lonely Hearts Club Band"] = d;
등
struct
구조 데이터
나는 이것을 조사 할 것이다, 나를 바른 방향으로 이끌어 주셔서 감사합니다! – user1082764
는 첫째, 데이터베이스를 사용하려면 :
struct Album {
string title;
string year;
vector<string> tracks;
};
map
다른 값으로 값을 매핑 : At what point is it worth using a database?
두 개 이상의 연관 배열 또는 맵이 필요합니다. 이렇게하면 다른 필드를 기반으로 검색하고 정렬 할 수 있습니다. 예를 들어
:
제목 테이블
+----------+-------+
| ID_Title | Title |
+----------+-------+
아티스트 테이블
+-----------+-------------+
| ID_Artist | Artist name |
+-----------+-------------+
+-----------+----------+
| ID_Artist | ID_Title |
+-----------+----------+
당신은 노래 테이블을 설정할 수
가 아티스트 나 제목으로 분류 할
노래 표 .웹에서 "데이터베이스 표준 형식"을 검색하십시오.
왜 자신을 20 명으로 제한합니까? – john