Computers and Technology
Computers and Technology, 01.07.2021 16:00, rilee3344

Save the following C++ program into a file classes. cpp #include using namespace std;
class A {
protected:
int x;
public:
A() { x = 0;}
void increment() { x++; }
virtual void decrement() { x--; }
void print() {cout << "x = " << x << endl;}
};
class B : public A {
public:
void increment() { x = x + 2; }
virtual void decrement() { x = x - 2; }
};

int main() {
A a; // a is an object of class A
A * ptr; // ptr is a pointer to an object of class A
ptr = &a;
ptr -> increment();
ptr -> print();
ptr -> decrement();
ptr -> print();
}
Compile the program by typing g++ classes. cpp, run it by typing ./a. out. Make sure that the program compiles and runs.
Question 1. In main add an object b of class B. Set the pointer ptr to point to b. Call increment() and decrement() on the object pointed to by ptr, print the object after each call. Which method gets called in each case? Why?
Question 2. Add a protected variable y to B and a constructor to initialize it to 0. Add a print() method in B so that both x and y are printed. Which print method is called on the object B referenced by ptr? If needed, change method declarations so that the print method of B is called for the B object. What did you need to change and why?
Question 3. Assuming that a is a variable of type A, b is an object of type B, and ptr is the pointer of type A, what would you expect to be printed by the following statement:
a = b;
a. print();
ptr = &a;
ptr -> print();
What gets printed? Why? Please explain the difference in behavior between this example and Question 2.
Question 4. What happens if you have an object b of class B and you call the print method like this: b. A::print()?
Question 5. Write a function that takes an object of class A and prints it (don't forget to add the function prototype at the top of the file). Can you pass an object of a class B to this function?
Question 6. Write a function that takes an object of class A and returns it. Can you pass an object of a class B to this function?
Question 7. What happens if you change the declaration
class B : public A
to
class B : A
?

answer
Answers: 3

Other questions on the subject: Computers and Technology

image
Computers and Technology, 22.06.2019 21:00, briannaleiigh
Kirk found a local community college with a two-year program and he is comparing the cost with that of an out-of-state two-year school. what is the expected total cost for one year at the local community college if kirk lives at home? what is the expected total cost for one year at the out-of-state school if kirk lives on campus?
Answers: 2
image
Computers and Technology, 24.06.2019 18:30, brendahndz8676
Is a type of bullying that takes place when a person intentionally posts negative information about another person that is not true.
Answers: 2
image
Computers and Technology, 24.06.2019 21:30, erickamiles1797
How do i copy and paste equations and pictures like math graphs, to post on this site to get my questions answered?
Answers: 2
image
Computers and Technology, 25.06.2019 06:20, kromaug7986
In your pest busters game, how does player 2 move the ship 2 object? a pressing the w and s keys b. pressing the up arrow and down arrow keys c. moving the mouse from side to side d. moving the mouse up and down select the best answer from the choices provided
Answers: 1
Do you know the correct answer?
Save the following C++ program into a file classes. cpp #include using namespace std;
class A...

Questions in other subjects:

Konu
Social Studies, 25.11.2020 01:10
Konu
Social Studies, 25.11.2020 01:10
Konu
Mathematics, 25.11.2020 01:10
Konu
Mathematics, 25.11.2020 01:10