if you have the following class definitions, which of the following is the proper way to construct an object of the derived class? class pet { public: pet(); void printpet(); string getname(); void setname(string newname); private: string name; }; class dog:public pet { public: dog(); void printpet(); void settype(string newtype); string gettype(); private: string type; };