Technical Interview Questions and Answers Part I
![]() |
| Technical Interview Questions and Answers Part II |
11.What is the difference between class and structure?
Structure: Initially (in C) a structure was used to bundle
different type of data types together to perform a particular functionality.
But C++ extended the structure to contain functions also.
The major difference is that all declarations inside a structure are by default
public.
Class: Class is a successor of Structure. By default all the members inside the
class are private.
12. What is ponter?
Pointer is a variable in a program is
something with a name, the value of which can vary. The way the compiler and
linker handles this is that it assigns
a specific block of memory within the computer to hold the value of that
variable.
13.What is the difference between null and void pointer?
A Null pointer has the value 0. void pointer is a generic
pointer introduced by ANSI. Generic pointer can hold the address of any data
type.
14.what is function overloading
Function
overloading is a feature of C++ that allows us to create multiple
functions with the same name, so long as they have different
parameters.Consider the following function:
int Add(int nX, int nY)
{
return nX + nY;
}
15.What is function overloading and operator overloading?
Function overloading: C++ enables several functions of the same name to be
defined, as long as these functions have different sets of parameters (at least
as far as their types are concerned). This capability is called function
overloading. When an overloaded function is called, the C++ compiler selects
the proper function by examining the number, types and order of the arguments
in the call. Function overloading is commonly used to create several functions
of the same name that perform similar tasks but on different data types.
Operator overloading allows existing C++ operators to be redefined so that they
work on objects of user-defined classes. Overloaded operators are syntactic
sugar for equivalent function calls. They form a pleasant facade that doesn't
add anything fundamental to the language (but they can improve
understandability and reduce maintenance costs).
16.what is friend function?
A friend function for a class is used in
object-oriented programming to allow access to public, private, or protected
data in the class from the outside.
Normally, a function that is not a member of a class cannot access such
information; neither can an external class. Occasionally, such access will be
advantageous for the programmer. Under these circumstances, the function or
external class can be declared as a friend of the class using the friend
keyword.
17.What do you mean by inline function?
The idea behind inline functions is to insert the code of a called function at
the point where the function is called. If done carefully, this can improve the
application's performance in exchange for increased compile time and possibly
(but not always) an increase in the size of the generated binary executables.
18. Tell me something about abstract classes?
An abstract class is a class which does not fully represent
an object. Instead, it represents a broad range of different classes of
objects. However, this representation extends only to the features that those
classes of objects have in common. Thus, an abstract class provides only a
partial description of its objects.
19.What is the difference between realloc() and free()?
The free subroutine frees a block of memory previously
allocated by the malloc subroutine. Undefined results occur if the Pointer
parameter is not a valid pointer. If the Pointer parameter is a null value, no
action will occur. The realloc subroutine changes the size of the block of
memory pointed to by the Pointer parameter to the number of bytes specified by
the Size parameter and returns a new pointer to the block. The pointer
specified by the Pointer parameter must have been created with the malloc,
calloc, or realloc subroutines and not been deallocated with the free or
realloc subroutines. Undefined results occur if the Pointer parameter is not a
valid pointer.
20.What is the difference between an array and a list?
Array is collection of homogeneous elements. List is
collection of heterogeneous elements.
For Array memory allocated is static and continuous. For List memory allocated
is dynamic and Random.
Array: User need not have to keep in track of next memory allocation.
List: User has to keep in Track of next location where memory is allocated.
Array uses direct access of stored members, list uses sequential access for
members.

