What is conversion constructor?
Answers were Sorted based on User's Feedback
Answer / swarna sekhar dhar
A constructor that can be called with a single argument is
used for conversions from the type of the argument to the
class type. Such a constructor is called a conversion
constructor. Consider the following example:
/ spec1_conversion_constructors.cpp
class Point
{
public:
Point();
Point( int );
//...
};
int main()
{
}
Sometimes a conversion is required but no conversion
constructor exists in the class. These conversions cannot be
performed by constructors. The compiler does not look for
intermediate types through which to perform the conversion.
For example, suppose a conversion exists from type Point to
type Rect and a conversion exists from type int to type
Point. The compiler does not supply a conversion from type
int to type Rect by constructing an intermediate object of
type Point.
| Is This Answer Correct ? | 16 Yes | 1 No |
Answer / sachin mahajan
This is related to typecasting of user defined datatypes ie
Convertion of one class object to other class object.
Ex
I want to type cast REAL class object to COMPLEX Class object
Both REAL class and COMPLEX Class are user defined.
COMPLEX objComplex(6,3); //6 is real and 3 is imagnary
REAL objReal(5);
objComplex=objReal;
//end result of the above statement should be that
objComplex //should have 5 as real part and 0 as imaginary
//There are two solutions to it
//a)write conversion constuctor
//b)Overload assignment operator
// (a) for this add this in the COMPLEX Class
COMPLEX :: COMPLEX(REAL r)
{
real=r.value; // value is the only data member of REAL class
imag=0;
}
| Is This Answer Correct ? | 14 Yes | 2 No |
What is near, far and huge pointers? How many bytes are occupied by them?
Is there a datatype string in c++?How is the memory allocation?
What is the difference between a reference and a pointer?
Is it possible to pass an object of the same class in place of object reference to the copy constructor?
What is the difference between ++ count and count ++?
We use library functions in the program, in what form they are provided to the program?
class basex { int x; public: void setx(int y) {x=y;} }; class derived : basex {}; What is the access level for the member function "setx" in the class "derived" above? a) private b) local c) global d) public e) protected
Explain the pure virtual functions?
Explain the advantages of using friend classes.
State the difference between pre and post increment/decrement operations.
What is unary operator? List out the different operators involved in the unary operator.
Can constructor be private in c++?