Tribhuvan University
Institute of Science and Technology
2075
Bachelor Level / second-semester / Science
Computer Science and Information Technology( CSC166 )
Object-Oriented Programming
Full Marks: 60 + 20 + 20
Pass Marks: 24 + 8 + 8
Time: 3 Hours
Candidates are required to give their answers in their own words as far as practicable.
The figures in the margin indicate full marks.
Group A
Attempts any TWO questions
Explain the concept of user-defined to user-defined data conversion routine located in the destination class.
Depict the difference between private and public derivation. Explain derived class constructor with suitable program.
Briefly explain the hierarchy of stream classes. Write a program that overloads extraction and insertion operators.
Group B
Attempts any EIGHT questions
Write a member function called reverseit() that reverses a string ( an array of character). Use a for loop that swaps the first and last characters, then the second and next-to last characters and so on. The string should be passed to reverseit() as an argument.
What is the principle reason for using default arguments in the function? Explain how missing arguments and default arguments are handled by the function simultaneously?
“An overloaded function appears to perform different activities depending the kind of data send to it” Justify the statement with appropriate example.
Explain the default action of the copy constructor. Write a suitable program that demonstrates the technique of overloading the copy constructor.
Briefly explain types of inheritance used in object oriented Programming.
Create a real scenario where static data members are useful. Explain with suitable example.
Create a function called swaps() that interchanges the values of the two arguments sent to it (pass these arguments by reference). Make the function into a template, so it can be used with all numerical data types (char, int, float, and so on). Write a main() program to exercise the function with several types.
Explain how exceptions are used for handling C++ error in a systematic and OOP-oriented way with the design that includes multiple exceptions.
How is character I/O different from Binary I/O? Explain with examples.