FINALTERM EXAMINATION
Spring 2010
CS304- Object Oriented Programming
Time: 90 min
M a r k s: 58
CS304 Question No: 1
A template argument is preceded by the keyword ________.
► vector
► class
► template
► type*
CS304 Question No: 2
Which of the following causes run time binding?
► Declaring object of abstract class
► Declaring pointer of abstract class
► Declaring overridden methods as non-virtual
► None of the given
CS304 Question No: 3
A function template can not be overloaded by another function template.
► True
► False
CS304 Question No: 4
Which of the following is the best approach if it is required to have more than one functions having exactly same functionality and implemented on different data types?
► Templates
► Overloading
► Data hiding
► Encapsulation
CS304 Question No: 5
Identify the correct way of declaring an object of user defined template class Afor char type members?
► A obj;
► A obj;
► A obj;
► Obj A;
CS304 Question No: 6
The user must define the operation of the copy constructor.
► True
► False
CS304 Question No: 7
Template functions use _________ than ordinary functions.
► Greater Memory
► Lesser Memory
► Equal Memory
► None of the given options
CS304 Question No: 8
The find() algorithm
► finds matching sequences of elements in two containers.
► finds a container that matches a specified container.
► takes iterators as its first two arguments.
► takes container elements as its first two arguments.
CS304 Question No: 9
Compiler performs ________ type checking to diagnose type errors,
► Static
► Dynamic
► Bound
► Unbound
CS304 Question No: 10
Which of the following is/are advantage[s] of generic programming?
► Reusability
► Writability
► Maintainability
► All of given
CS304 Question No: 11
Vectors contain contiguous elements stored as a[an] ___.
► variable
► array
► function
► datatype
CS304 Question No: 12
Suppose you create an uninitialized vector as follows:
vector evec;
After adding the statment,
evec.push_back(21);
what will happen?
► The following statement will add an element to the start (the back) of evec and will initialize it with the value 21.
► The following statement will add an element to the center of evec and will reinitialize it with the value 21.
► The following statement will delete an element to the end (the back) of evec and will reinitialize it with the value 21.
► The following statement will add an element to the end (the back) of evec and initialize it with the value 21.
CS304 Question No: 13
In a de-queue, (chose the best option)
► data can be quickly inserted or deleted at any arbitrary location.
► data can be inserted or deleted at any arbitrary location, but the process is relatively slow.
► data can not be quickly inserted or deleted at either end.
► data can be inserted or deleted at either end, but the process is relatively slow.
CS304 Question No: 14
Algorithms can only be implemented using STL containers.
► True
► False
CS304 Question No: 15
What is a class?
► A class is a section of computer memory containing objects.
► A class is a section of the hard disk reserved for object oriented programs
► A class is the part of an object that contains the variables.
► A class is a description of a kind of object.
CS304 Question No: 16
Inheritance is a way to
► organize data.
► pass arguments to objects of classes.
► add features to existing classes without rewriting them.
► improve data-hiding and encapsulation.
CS304 Question No: 17
We can use "this" pointer in the constructor in the body and even in the initialization list of any class if we are careful,
► True
► False
CS304 Question No: 18
________ and ______ methods may not be declared abstract.
► private,static
► private,public
► static,public
► none of given
CS304 Question No: 19
Default constructor is such constructor which either has no ---------or if it has some parameters these have -------- values
► Parameter, temporary
► Null, Parameter
► Parameter, default
► non of the given
CS304 Question No: 20
Public methodsof base class can --------- be accessed in its derived class
► directly
► inderectly
► simultaniously
► non of the given
CS304 Question No: 21
The type that is used to declare a reference or pointer is called its ---------
► default type
► static type
► abstract type
► reference type
CS304 Question No: 22
------------- members are somewhere between public and private members. They are used in inheritance
► protected
► public
► private
► global
CS304 Question No: 23
Which of these are examples of error handling techniques ?
► Abnormal Termination
► Graceful Termination
► Return the illegal
► all of the given
CS304 Question No: 24
----------------- follow try block to catch the object thrown
► catch block
► throw block
► main block
► non of the given
CS304 Question No: 25
Graphical representation of the classes and objects is called object model it shows -------
► Class Name only
► Class Name and attributes
► Relationships of the objects and classes
► all of the given
CS304 Question No: 26
Destructor can be overloaded
► True
► False
CS304 Question No: 27 ( M a r k s: 2 )
Describe the way to declare a template function as a friend of any class.
Template templatename
Class calssname
{
Friend void friend templatename (classname astric const prt classname);
}
CS304 Question No: 28 ( M a r k s: 2 )
State any two reasons why the virtual methods can not be static?
1-virtual method can not be static as it is dynamic
2-as virtual method is dynamic so it works automatically that is also another reason
That virtual method can not be static.
CS304 Question No: 29 ( M a r k s: 2 )
Explain the statement below,
vector ivec(4, 3);
CS304 Question No: 30 ( M a r k s: 2 )
Explain two benefits of setter functions.
1- It minimize the changes to move the objects in inconsistent states
2- You can write checks in your setter functions to check the validity of data entered by the user, for example age functions to check to calculate the age from date entered.
CS304 Question No: 31 ( M a r k s: 3 )
Consider the code below,
template
class T1 {
public:
T i;
protected:
T j;
private:
T k;
friend void Test();
};
This code has a template class T1 with three members i,j and k and a friend function Test(), you have to describe which member/s of T1will be available in function Test().
public:
T i;
protected:
T j;
CS304 Question No: 32 ( M a r k s: 3 )
What do you mean by Stack unwinding?
When we want to check what happens actually to the local variables in the try block when then an exception is thrown this concept is called stack unwinding.
CS304 Question No: 33 ( M a r k s: 3 )
Give the c++ code of case sensitive comparison function of string class.
CS304 Question No: 34 ( M a r k s: 5 )
http://groups.google.com/group/vuzs
What is random_iterator? What is relation between random_iterator and Vector?
Random_iterator: it provided both increment and decrement and also provide constant time methods for moving forward and backword in arbitrary sized steps. Ramdom iterator provide asentially all of the operations of ordinary c pointer arithmetic.
Vector class provide an stl style random access iterator for use with generic algorithm since neither the vactor nor the matrix classes are container classes in actuall. The iterator class is really an iterator of data object that is viewed by vector or matrix.
CS304 Question No: 35 ( M a r k s: 5 )
What would be the output of this code?
class mother {
public:
mother ()
{ cout <