Description # Write a class called Song in a file called Song.h with three fields: Title (string) Singer (string) Chart Position (int) # Place these method headers in the Song.h file 1. Getter and setter for each field 2. Other methods 1. Song(); // default constructor 2. Song(std::string title,std:: string singer, int chartPosition); // custom constructor 3. std::string toString(); // returns object as a string 4. bool operator<(Song other) // overloads the < operator -returns true if the chart position of this song is less other’s 5. friend std::ostream & operator<<(std::ostream&, Song* s); // overloads the << operator # Write the implementation of these methods in a file called Song.cpp # Write a driver called SongMain.cpp that does the following a. Creates a dynamic array that reads in data from SongData.txt and b. Populates the array by constructing song objects from this data c. Uses the non-recursive selection sort method to sort the array according to chart position (uses the overloaded < operator on Song objects) d. Prints the top ten songs in the chart (uses the overloaded << operator) e. Searches for any song by title and returns chart position asks user for song title, does linear search returns position or -1 Todo List: Use the templates given to you. You are given starter code for Song.h, Song.cpp and SongMain.cpp Code marked GIVEN CODE is given to you for free Comments marked //TODO indicated you need to fill in code.
OOPs
In today's technology-driven world, computer programming skills are in high demand. The object-oriented programming (OOP) approach is very much useful while designing and maintaining software programs. Object-oriented programming (OOP) is a basic programming paradigm that almost every developer has used at some stage in their career.
Constructor
The easiest way to think of a constructor in object-oriented programming (OOP) languages is:
Description
# Write a class called Song in a file called Song.h with three fields:
Title (string)
Singer (string)
Chart Position (int)
# Place these method headers in the Song.h file
1. Getter and setter for each field
2. Other methods
1. Song();
// default constructor
2. Song(std::string title,std:: string singer, int chartPosition);
// custom constructor
3. std::string toString();
// returns object as a string
4. bool operator<(Song other)
// overloads the < operator -returns true if the chart position of this song is less
other’s
5. friend std::ostream & operator<<(std::ostream&, Song* s);
// overloads the << operator
# Write the implementation of these methods in a file called Song.cpp
# Write a driver called SongMain.cpp that does the following
a. Creates a dynamic array that reads in data from SongData.txt and
b. Populates the array by constructing song objects from this data
c. Uses the non-recursive selection sort method to sort the array
according to chart position (uses the overloaded < operator on Song
objects)
d. Prints the top ten songs in the chart (uses the overloaded <<
operator)
e. Searches for any song by title and returns chart position
asks user for song title, does linear search returns position or -1
Todo List:
Use the templates given to you. You are given starter code
for
Song.h, Song.cpp and SongMain.cpp
Code marked GIVEN CODE is given to you for free
Comments marked //TODO indicated you need to fill in
code.
Step by step
Solved in 3 steps with 1 images