Problem Statement - OOPs Concept Identification and Writing Object Declaration Statements
Observe the following C++ code and answer the questions (i) and (ii).
Note: Assume all necessary files are included.
TEST() //Member Function 1
TEST(TEST &T) //Member Function 2
___________________ //Statement 1
___________________ //Statement 2
(i) Which Object Oriented Programming feature is illustrated by the Member Function 1 and Member Function 2 together in the class TEST?
(ii) Write Statement 1 and Statement 2 to execute Member Function 1 and Member Function 2 respectively.
(i) Answers, Polymorphism, Constructor overloading or Function Overloading are all treated as correct
TEST T1; //Statement 1
TEST T2(T1); //Statement 2
TEST T2=T1; //Statement 2
(i) Member Function 1 and Member Function 2 are actually depicting a copy constructor, one may write copy constructor, but since the Basic OOPS concept are understood a Polymorphism, Data Hiding, Abstraction, Encapsulation, Modularity etc. Most appropriate answer is Polymorphism or Function Overloading.
(ii) This question has an error as this line TCode=E.TCode+1; should be TCode=T.TCode+1; So identifying error can also be treated as correct answer for statement 2.
Statement 1 will be declaration of some object of TEST and Statement 2 will be creating another object using one of the two syntax of copy constructor which are by way of function call style or assignment style.
TEST T2(T1); //Function Call Style for copy constructor
TEST T2=T1; //Assignment Style call copy constructor