Answered step by step
Verified Expert Solution
Question
1 Approved Answer
The platypus quest - I hope you guys still remember it from BLUE. If you had aced it , this quest should be a piece
The platypus quest I hope you guys still remember it from BLUE. If you had aced it this quest
should be a piece of cake. Otherwise, this is your first major challenge in GREEN territory. Make
sure you're solid with what it takes to solve it
before proceeding to the next one.
As you solve this quest, you'll find yourself
leveraging a lot of the knowledge and skills you
learned in BLUE. You will also learn a few new
concepts eg inner classes, overloading of
operators, etc. Where necessary, I simply
apply these concepts in the starter code I give
you. You are free to dive into it to any level of
detail and clarify them in the forums Ill help you or you can simply copy my starter code asis
and follow the directions in the spec for now. The skipped concepts will make more sense as you
progress forward on your questing trail.
Some miniquests in this quest will give you trophies for meeting a minimum requirement, and
give you additional surprise rewards for doing something else right that wasn't explicitly asked.
Overview
In this quest you will implement a class called Playlist as a singly linked list of nodes with
SongEntry objects as their payloads. Your code should be organized into a header file
Playlisth and a separate implementation file Playlistcpp
Your Playlist class will encapsulate things the client the user of the class doesn't have to
know about. Make them inner classes. An inner class is simply a class that is defined inside
another class duh! If an inner class is private, then only the containing class can create or
manipulate objects of that class. If it is public, then anyone can instantiate the inner class and
invoke its public methods. But they'd have to access the class name with the outerclass qualifier.
For example, if SongEntry is a public inner class of Playlist, a user, in their main
method, can refer to it as Playlist::SongEntry. This kind of structuring also gives a nice
namespacelike separation of the type from other classes elsewhere that may have the same
name.
You will have two inner classes in your Playlist class:
Playlist::SongEntry, which is public
Playlist::Node, which is private
You don't have to modify anything in the struct
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started