Complete the PoundDog code by adding a constructor having a constructor initializer list that initializes age with 1, id with -1, and name with "NoName". Notice that MyString's default constructor does not get called. Note: If you instead create a traditional default constructor as below, MyString's default constructor will be called, which prints output and thus causes this activity's test to fail. Try it! #include #include using namespace std; class MyString {    public:       MyString();       MyString(string s);       string GetString() const   { return str; };       void   SetString(string s) { str = s; };    private:       string str; }; MyString::MyString() {    cout << "MyString default constructor called" << endl;    str = ""; } MyString::MyString(string s): str(s) { } class PoundDog {    public:       PoundDog();       void Print() const;    private:       int age;       int id;       MyString name; }; /* Your solution goes here  */ void PoundDog::Print() const {    cout << "age:  " << age << endl;    cout << "id:   " << id << endl;    cout << "name: " << name.GetString() << endl; } int main() {    PoundDog currDog;    currDog.Print();    return 0; }

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question

Complete the PoundDog code by adding a constructor having a constructor initializer list that initializes age with 1, id with -1, and name with "NoName". Notice that MyString's default constructor does not get called.

Note: If you instead create a traditional default constructor as below, MyString's default constructor will be called, which prints output and thus causes this activity's test to fail. Try it!

#include <iostream>
#include <string>
using namespace std;

class MyString {
   public:
      MyString();
      MyString(string s);
      string GetString() const   { return str; };
      void   SetString(string s) { str = s; };
   private:
      string str;
};

MyString::MyString() {
   cout << "MyString default constructor called" << endl;
   str = "";
}

MyString::MyString(string s): str(s) {
}


class PoundDog {
   public:
      PoundDog();
      void Print() const;

   private:
      int age;
      int id;
      MyString name;
};

/* Your solution goes here  */

void PoundDog::Print() const {
   cout << "age:  " << age << endl;
   cout << "id:   " << id << endl;
   cout << "name: " << name.GetString() << endl;
}

int main() {
   PoundDog currDog;
   currDog.Print();
   return 0;
}

 

Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 4 steps with 2 images

Blurred answer
Knowledge Booster
Reference Types in Function
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
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education