C++ Virtual Functions Question:
Download Questions PDF

Explain object slicing in C++?


When a Derived Class object is assigned to Base class, the base class' contents in the derived object are copied to the base class leaving behind the derived class specific contents. This is referred as Object Slicing. That is, the base class object can access only the base class members. This also implies the separation of base class members from derived class members has happened.

class base
int i, j;
class derived : public base
int k;
int main()
base b;
derived d;
return 0;
here b contains i and j where as d contains i, j& k. On assignment only i and j of the d get copied into i and j of b. k does not get copied. on the effect object d got sliced.

Download C++ Virtual Functions Interview Questions And Answers PDF

Previous QuestionNext Question
What is problem with overriding functions?Can you please explain the difference between using macro and inline functions?