The following C++ code consists of an error. What is the cause of the error? class Human{ public: virtual void speak () { cout << "I am a human." << endl; class Teacher{ public: void speak () { cout << "I am a teach. I teach students." << endl; } ; int main (0 { Human *h; Teacher t; h = &t; h -> speak (); return 0; This is not valid to use the same function/method name in two classes. Should not use the keyword virtual in the speak() in class Human. The upcasting by creating a superclass pointer reference to the subclass is prohibited. The class Teacher is not derived from the class Human.

Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:James Kurose, Keith Ross
Chapter1: Computer Networks And The Internet
Section: Chapter Questions
Problem R1RQ: What is the difference between a host and an end system? List several different types of end...
icon
Related questions
Question
Need this answers urgently
The following C++ code consists of an error. What is the cause of the error?
class Human{
public:
virtual void speak() {
cout << "I am a human."
<< endl;
} ;
class Teacher{
public:
void speak(){
cout << "I am a teach. I teach students." << endl;
} ;
int main (O {
Human *h;
Teacher t;
h = &t;
h -> speak ();
return 0;
This is not valid to use the same function/method name in two classes.
Should not use the keyword virtual in the speak() in class Human.
The upcasting by creating a superclass pointer reference to the subclass is
prohibited.
O The class Teacher is not derived from the class Human.
Transcribed Image Text:The following C++ code consists of an error. What is the cause of the error? class Human{ public: virtual void speak() { cout << "I am a human." << endl; } ; class Teacher{ public: void speak(){ cout << "I am a teach. I teach students." << endl; } ; int main (O { Human *h; Teacher t; h = &t; h -> speak (); return 0; This is not valid to use the same function/method name in two classes. Should not use the keyword virtual in the speak() in class Human. The upcasting by creating a superclass pointer reference to the subclass is prohibited. O The class Teacher is not derived from the class Human.
Expert Solution
steps

Step by step

Solved in 2 steps

Blurred answer
Recommended textbooks for you
Computer Networking: A Top-Down Approach (7th Edi…
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Concepts of Database Management
Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning
Prelude to Programming
Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education
Sc Business Data Communications and Networking, T…
Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY