프로젝트 의 C++ 스킬 트리

짧은 휴식을 위한 재생 목록 만들기

재사용할 수 있는 C++ 선택 및 M3U8 내보내기 함수를 만들고, 주어진 시간에 맞는 음원 전체를 선택해 실제 재생 목록을 재생하고 다운로드합니다.

프로젝트C++

💡 이 튜토리얼은 영어로 번역되었습니다. 원본을 보려면 영어로 전환

소개

짧은 휴식을 위한 재생 목록 만들기는 언어 기초를 익힌 학습자를 위한 C++ 실습 프로젝트입니다. 직접 제작된 합성 음원 모음에서 짧은 휴식 시간에 맞는 재생 목록을 만들고, 실제 결과를 재생하고 다운로드합니다.

이 과정은 가이드 실습 1개와 독립 챌린지 1개로 구성됩니다. 먼저 두 곡의 예제에서 출발해 재사용할 수 있는 선택 및 내보내기 함수를 만듭니다. 그런 다음 제목은 같지만 서로 다른 음원 두 개가 포함된 새 모음에 같은 규칙을 적용합니다. 각 실습에는 필요한 파일이 별도로 준비되어 있습니다.

학습 내용

과정을 마치면 다음을 수행할 수 있습니다.

  • 음원을 vector 안의 객체로 나타내고 선호도와 고정된 트랙 ID 순으로 정렬합니다.
  • 남은 시간에 맞는 곡 전체를 선택하고, 시간이 정확히 맞는 곡을 포함하며, 너무 긴 곡을 건너뛴 뒤에도 선택을 계속합니다.
  • 길이, 제목, 오디오 상대 경로가 정확히 대응하는 UTF-8 M3U8 재생 목록을 작성합니다.
  • 원본 음원을 보존하면서 저장한 결과를 재생하고 재생 위치를 이동하며 다운로드합니다.
  • 유효한 빈 선택과 잘못된 입력을 구분하고 일반적인 경로 또는 컴파일 오류를 해결합니다.

추천 대상

이 과정은 표준 컨테이너와 파일 출력을 사용해 실제로 이용할 수 있는 결과를 만들고 싶은 C++ 학습자에게 적합합니다.

선수 지식: 기본 터미널 탐색과 C++ 문자열, 클래스, vector, 파일 스트림, 예외에 익숙해야 합니다. 가이드 실습에서 이 프로젝트에 사용하는 const 참조, 비교 함수, 상대 경로를 설명합니다.

학습 환경: LabEx는 컴파일러, 소스 코드 틀, 음원 모음, Terminal, Player가 준비된 브라우저 기반 Linux 환경을 제공합니다. 플레이어의 레이블과 프로그램 출력은 영어로 표시됩니다.

자주 묻는 질문

도구를 설치하거나 음악을 찾아야 하나요?

아니요. 컴파일러, 직접 제작된 합성 음원, 브라우저 플레이어가 준비되어 있습니다.

애플리케이션 전체를 작성하나요?

선택 함수와 재생 목록 내보내기 함수를 구현합니다. 카탈로그 구문 분석과 플레이어는 제공됩니다. 프로그램은 정해진 선호도 순서를 따르며 최적의 곡 조합을 찾지는 않습니다.

재생 목록에 오디오가 포함되나요?

아니요. M3U8 파일은 음원을 참조합니다. 공유할 때는 배운 디렉터리 관계에 따라 오디오 폴더를 재생 목록 옆에 유지하세요. 이 과정은 곡 전체를 선택하며 오디오를 자르지 않습니다.

강사

labby
Labby
Labby is the LabEx teacher.