GeekInterview.com
  I am new, Sign me up!
 
GeekInterview.com  >  Placement Papers  >  Honey Well  >  C Plus Plus
 C Plus Plus  |  Question 1 of 1    Print  
Honey Well Written Test -  C++ Questions

1)  If there is one class template which has one static member variable
     that static variable will belong to
     a) Every instance of class template will share the same copy of static
variable
     b) Every instance of class template will have its own copy of  static
variable.
     c) Compilation error
     d) Don't remember.
2) What is template specialization ???

    a)  define a new template class for a specific data type.
     b)c)d)
3)  How we will overload operator  *+=    such that
      obj1 *+= obj2;
      implies that
     obj1=obj1*(obj1+obj2);
      four choice were there last option was d) it is not possible I checked
that option.
4)  IN C++ what does the operator overloading means.
      a) Giving new meaning to existing C++ operators
      b) defining functionality of existing  C++ operator for user define
objects.
      c)  defining new operators.
      d) don't remember.
5)  what is '>>' in C++
     a) right shift operator and insertion   operator depend upon the use
     b) right shift operator and extraction  operator depend upon the
context use
     c) right shift operator and insertion/extraction  operator depend upon
the use
6)   class A
      {
       int a ,b;
       A() : a(0)
       {b=0;}
      };
     if you create obj of this class as A obj;
    a) b will be initialized before a
    b) a will be initialized before b
    c) both will be initialized together
    d) none of these.

    a) exec

How image of one process can be copied to new born process
     a) fork

how can you list all the files used by a particular process how do u create a link of file




  
Total Answers and Comments: 3 Last Update: March 06, 2009   
  
 Sponsored Links

 
 Best Rated Answer

No best answer available. Please pick the good answer available or submit your answer.
March 06, 2008 06:32:02   #1  
kishore2eee_svu Member Since: December 2007   Contribution: 1    

RE: Honey Well Written Test -  C++ Questions

1) If there is one class template which has one static member variable that static variable will belong to

Answer : a) Every instance of class template will share the same copy of static variable.
Every class instantiated from a template class is like a ordinary and separate class. So by definition of static member variable every such class should have its own copy of static variable so answer is a .


2) What is template specialization ?

Answer : Template specialization is a way of informing the compiler to use that version of the template for specific data types in case of template class and for specific arguments in case of function template.
For e.g say we define template class as
template class container{}
So a particular container class will be generated depending on the template argument which is T


container d;

the above statement will generate container class from the template class.

If we prefer to optimize the implementation by making all containers of pointers share a common implementation we could specialize the above template for pointer template argument as below


template class container{}
In this all the below statements generate classes out of the specialized template class
container
container

This is called template specialization.

3)How we will overload operator*+ such that
obj1 *+ obj2;
implies that
obj1 obj1*(obj1+obj2);
four choice were there last option was d) it is not possible I checked that option.


Answer : Its not possible to define new operator using operator overloading only existing operators can be overloaded. There is no such ternary operator as *+ in C++ so its not possible to overload that operator.

4)IN C++ what does the operator overloading means.
a) Giving new meaning to existing C++ operators
b) defining functionality of existingC++ operator for user define
objects.
c)defining new operators.
d) don't remember.


Answer : b. operator overloading doesn't allow changing the meaning of existing operators also we can't change the meaning of the operator in case of built in data types. Only operations involving user defined data types can be overloaded.

5)
What is '>>' in C++
a) right shift operator and insertion operator depend upon the use
b) right shift operator and extractionoperator depend upon the
context use
c) right shift operator and insertion/extractionoperator depend upon
the use


Answer : In C++ operator >> is still a right shift operator as it was in C. Howeve the operator was been overloaded in almost all of library classes as an extraction operator. So its not a built in extraction operator but still a right shift operator.

6) class A
{
int a b;
A() : a(0)
{b 0;}
};
if you create obj of this class as A obj;
a) b will be initialized before a
b) a will be initialized before b
c) both will be initialized together
d) none of these.


Answer : a) exec

The order of initialization is not as per the order of member initializer list rather the member variables are initialized int the order of declaration in the class. So the variable a will be initialized first followed by b. So the answer is b.


 
Is this answer useful? Yes | No
November 15, 2008 02:53:20   #2  
rehnikh1 Member Since: November 2008   Contribution: 1    

RE: Honey Well Written Test -  C++ Questions
class A
{
int a b;
A() : a(0)
{b 0;}
};

 
Is this answer useful? Yes | No
March 06, 2009 07:24:50   #3  
manihclcodc Member Since: March 2009   Contribution: 3    

RE: Honey Well Written Test -  C++ Questions
For 1st question answer is d) compilation error

Here is the sample program describes the scenario.

#include<iostream>
using namespace std;
template<typename T>
class x
{
public :
static T a;
};

int main()
{
x<int> i;
x<int> j;
i.a 10;
cout << j.a;
}


Error for this program is

/tmp/cc78j5cy.o(.text+0x11a): In function `main':
: undefined reference to `x<int>::a'
/tmp/cc78j5cy.o(.text+0x127): In function `main':
: undefined reference to `x<int>::a'
collect2: ld returned 1 exit status


 
Is this answer useful? Yes | No


 
Go To Top


 Sponsored Links

 
About Us -  Privacy Policy -  Terms and Conditions -  Contact -  Ask Question -  Propose Category -  Site Updates 

Copyright © 2005 - 2009 GeekInterview.com. All Rights Reserved

Page copy protected against web site content infringement by Copyscape