C++ program complete the code here tasks. main.cc file #include int main() {   // =================== YOUR CODE HERE ===================   // 1. Create a vector Pet objects called `pets`.   //    Don't forget to #include and "pet.h"   // ======================================================   std::string name;   std::string breed_name;   std::string species;   std::string color;   double weight = 0.0;   do {     std::cout << "Please enter the pet's name (q to quit): ";     std::getline(std::cin, name);     if (name != "q") {       std::cout << "Please enter the pet's species: ";       std::getline(std::cin, species);       std::cout << "Please enter the pet's breed: ";       std::getline(std::cin, breed_name);       std::cout << "Please enter the pet's color: ";       std::getline(std::cin, color);       std::cout << "Please enter the pet's weight (lbs): ";       std::cin >> weight;       std::cin.ignore();       // =================== YOUR CODE HERE ===================       // 2. Create a Pet object using the input from the user       //    Store the newly-created Pet object into the vector.       // ======================================================     }   } while (name != "q");   std::cout << "Printing Pets:\n";   // =================== YOUR CODE HERE ===================   // 3.  Print information about each pet in the `pets`   //     vector by writing a loop to access each Pet object.   // ======================================================   return 0; } pet.cc file #include "pet.h" #include #include // ========================= YOUR CODE HERE ========================= // This implementation file (pet.cc) is where you should implement // the member functions declared in the header (pet.h), only // if you didn't implement them inline within pet.h. // // Remember to specify the name of the class with :: in this format: //     MyClassName::MyFunction() { //        ... //     } // to tell the compiler that each function belongs to the Pet class. // =================================================================== breed.h file #include // ======================= YOUR CODE HERE ======================= // Write the Breed class here. Refer to the README for the member // variables, constructors, and member functions needed. // // Note: you may define all functions inline in this file. // =============================================================== pet.h file #include #include "breed.h" // ======================= YOUR CODE HERE ======================= // Write the Pet class here. Refer to the README for the member // variables, constructors, and member functions needed. // // Note: mark functions that do not modify the member variables // as const, by writing `const` after the parameter list. // Pass objects by const reference when appropriate. // Remember that std::string is an object! // =============================================================== The sample output: Please enter the pet's name (q to quit): AirBud Please enter the pet's type: Dog Please enter the pet's breed: Golden Retriever Please enter the pet's color: Blonde Please enter the pet's weight (lbs): 44.5 Please enter the pet's name (q to quit): Cookie Please enter the pet's type: Dog Please enter the pet's breed: English Bulldog Please enter the pet's color: Brown & White Please enter the pet's weight (lbs): 31.2 Please enter the pet's name (q to quit): q Printing Pets: Pet 1 Name: AirBud Species: Dog Breed: Golden Retriever Color: Blonde Weight: 44.5 lbs Pet 2 Name: Cookie Species: Dog Breed: English Bulldog Color: Brown & White Weight: 31.2 lbs

EBK JAVA PROGRAMMING
9th Edition
ISBN:9781337671385
Author:FARRELL
Publisher:FARRELL
Chapter11: Advanced Inheritance Concepts
Section: Chapter Questions
Problem 5RQ
icon
Related questions
Question

C++ program complete the code here tasks.

main.cc file

#include <iostream>

int main() {
  // =================== YOUR CODE HERE ===================
  // 1. Create a vector Pet objects called `pets`.
  //    Don't forget to #include <vector> and "pet.h"
  // ======================================================
  std::string name;
  std::string breed_name;
  std::string species;
  std::string color;
  double weight = 0.0;

  do {
    std::cout << "Please enter the pet's name (q to quit): ";
    std::getline(std::cin, name);
    if (name != "q") {
      std::cout << "Please enter the pet's species: ";
      std::getline(std::cin, species);
      std::cout << "Please enter the pet's breed: ";
      std::getline(std::cin, breed_name);
      std::cout << "Please enter the pet's color: ";
      std::getline(std::cin, color);
      std::cout << "Please enter the pet's weight (lbs): ";
      std::cin >> weight;
      std::cin.ignore();

      // =================== YOUR CODE HERE ===================
      // 2. Create a Pet object using the input from the user
      //    Store the newly-created Pet object into the vector.
      // ======================================================
    }
  } while (name != "q");

  std::cout << "Printing Pets:\n";
  // =================== YOUR CODE HERE ===================
  // 3.  Print information about each pet in the `pets`
  //     vector by writing a loop to access each Pet object.
  // ======================================================
  return 0;
}

pet.cc file

#include "pet.h"

#include <iomanip>
#include <iostream>
// ========================= YOUR CODE HERE =========================
// This implementation file (pet.cc) is where you should implement
// the member functions declared in the header (pet.h), only
// if you didn't implement them inline within pet.h.
//
// Remember to specify the name of the class with :: in this format:
//     <return type> MyClassName::MyFunction() {
//        ...
//     }
// to tell the compiler that each function belongs to the Pet class.
// ===================================================================

breed.h file

#include <string>
// ======================= YOUR CODE HERE =======================
// Write the Breed class here. Refer to the README for the member
// variables, constructors, and member functions needed.
//
// Note: you may define all functions inline in this file.
// ===============================================================

pet.h file

#include <string>

#include "breed.h"
// ======================= YOUR CODE HERE =======================
// Write the Pet class here. Refer to the README for the member
// variables, constructors, and member functions needed.
//
// Note: mark functions that do not modify the member variables
// as const, by writing `const` after the parameter list.
// Pass objects by const reference when appropriate.
// Remember that std::string is an object!
// ===============================================================

The sample output:

Please enter the pet's name (q to quit): AirBud
Please enter the pet's type: Dog
Please enter the pet's breed: Golden Retriever
Please enter the pet's color: Blonde
Please enter the pet's weight (lbs): 44.5
Please enter the pet's name (q to quit): Cookie
Please enter the pet's type: Dog
Please enter the pet's breed: English Bulldog
Please enter the pet's color: Brown & White
Please enter the pet's weight (lbs): 31.2
Please enter the pet's name (q to quit): q
Printing Pets:
Pet 1
Name: AirBud
Species: Dog
Breed: Golden Retriever
Color: Blonde
Weight: 44.5 lbs
Pet 2
Name: Cookie
Species: Dog
Breed: English Bulldog
Color: Brown & White
Weight: 31.2 lbs

Pets
Breed Class
Create a Breed class with the following:
Member Variables
Create the following private member variables, all of type std::string :
1. species_
2. breed_name__
3. color
Constructors
1. Create a default constructor for Breed that sets its species to "Dog", breed_name_ to "Pug", and color__ to "Fawn"
2. Create a non-default constructor that receives a std::string for species_, breed_name_, and color_ ; in that order. The values
from the constructor should appropriately assign the member variables.
Accessors and Mutators
Create accessors and mutators for all member variables, following the naming conventions covered in class. e.g. for species_, name the
accessor Species, and the mutator SetSpecies.
Pet Class
Create a Pet class with the following:
Member Variables
Create the following private member variables:
1. std::string name
2. Breed breed_
3. double weight_
Transcribed Image Text:Pets Breed Class Create a Breed class with the following: Member Variables Create the following private member variables, all of type std::string : 1. species_ 2. breed_name__ 3. color Constructors 1. Create a default constructor for Breed that sets its species to "Dog", breed_name_ to "Pug", and color__ to "Fawn" 2. Create a non-default constructor that receives a std::string for species_, breed_name_, and color_ ; in that order. The values from the constructor should appropriately assign the member variables. Accessors and Mutators Create accessors and mutators for all member variables, following the naming conventions covered in class. e.g. for species_, name the accessor Species, and the mutator SetSpecies. Pet Class Create a Pet class with the following: Member Variables Create the following private member variables: 1. std::string name 2. Breed breed_ 3. double weight_
Constructors
1. Create a default constructor for Pet that sets its name to "Doug" and weight to 15.6. The Breed object will automatically be
created using its default constructor.
2. Create a non-default constructor that receives an std::string for name_, Breed for breed, and a double for weight__ in that
order. The values from the constructor should appropriately assign the member variables.
3. Create another non-default constructor that receives an std::string for name_, std::string species_, name, and color_ for
the Breed constructor, and double for weight_ . The values from the constructor should appropriately assign the data members.
Accessors and Mutators
Create accessors and mutators for name, breed_, and weight_ . Please name the accessor for breed_ as GetBreed, to avoid
conflicting with the constructor for the Breed class.
SetBreed overload
Create a function overload for SetBreed that accepts a species, name_, and color_, all of type std::string, that will internally
create a Breed object using the values provided and then assign it to the breed_ member variable.
Print
Create a member function called Print that returns void and does not take in any parameters. Using the member variables, this function
should print out the name and weight of the Pet. It should also utilize accessors of the Breed class to get the species, breed name, and
color.
Other instructions
Complete the main function as described. Place the Pet class in pet.h, and the Breed class in breed.h. Member functions that take
more than ten lines or use complex constructs should have their function prototype in the respective .h header file and implementation in
the respective cc implementation file.
Transcribed Image Text:Constructors 1. Create a default constructor for Pet that sets its name to "Doug" and weight to 15.6. The Breed object will automatically be created using its default constructor. 2. Create a non-default constructor that receives an std::string for name_, Breed for breed, and a double for weight__ in that order. The values from the constructor should appropriately assign the member variables. 3. Create another non-default constructor that receives an std::string for name_, std::string species_, name, and color_ for the Breed constructor, and double for weight_ . The values from the constructor should appropriately assign the data members. Accessors and Mutators Create accessors and mutators for name, breed_, and weight_ . Please name the accessor for breed_ as GetBreed, to avoid conflicting with the constructor for the Breed class. SetBreed overload Create a function overload for SetBreed that accepts a species, name_, and color_, all of type std::string, that will internally create a Breed object using the values provided and then assign it to the breed_ member variable. Print Create a member function called Print that returns void and does not take in any parameters. Using the member variables, this function should print out the name and weight of the Pet. It should also utilize accessors of the Breed class to get the species, breed name, and color. Other instructions Complete the main function as described. Place the Pet class in pet.h, and the Breed class in breed.h. Member functions that take more than ten lines or use complex constructs should have their function prototype in the respective .h header file and implementation in the respective cc implementation file.
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 3 steps

Blurred answer
Follow-up Questions
Read through expert solutions to related follow-up questions below.
Follow-up Question

why is there a breed.cc file when there should be 4 files included. I would only like there to be 4 files inlcuded in order for the program to run, main.cc, pet.cc, pet.h, and breed.h file.

Solution
Bartleby Expert
SEE SOLUTION
Follow-up Question

solution is missing main.cc file and pet.cc file

Solution
Bartleby Expert
SEE SOLUTION
Knowledge Booster
Data members
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
EBK JAVA PROGRAMMING
EBK JAVA PROGRAMMING
Computer Science
ISBN:
9781337671385
Author:
FARRELL
Publisher:
CENGAGE LEARNING - CONSIGNMENT
Microsoft Visual C#
Microsoft Visual C#
Computer Science
ISBN:
9781337102100
Author:
Joyce, Farrell.
Publisher:
Cengage Learning,