tell about copy constructor
Answers were Sorted based on User's Feedback
Answer / sudha
A copy constructor is a special constructor in the C++
programming language used to create a new object as a copy
of an existing object.
There are 3 important places where a copy constructor is
called.
When an object is created from another object of the same
type
When an object is passed by value as a parameter to a
function
When an object is returned from a function
class B //With copy constructor
{
private:
char *name;
public:
B()
{
name = new char[20];
}
~B()
{
delete name[];
}
//Copy constructor
B(const B &b)
{
name = new char[20];
strcpy(name, b.name);
}
};
| Is This Answer Correct ? | 6 Yes | 0 No |
Basic thing, copy constructor will be called whenever a copy
is made. and copy constructors are called when:
1. create a new object using existing object.
2. When is returning to caller.
3. When an object is passed by value as a parameter to a
function
Basically a default copy constructor will be created which
does bitwise copy also know as shallow copy.
This will become a problem when we are dealing with dynamic
memory allocation for variables and leads to dangling pointer.
To overcome we have to override by deep copy.
| Is This Answer Correct ? | 3 Yes | 0 No |
Answer / achal ubbott
e.g. Let there be a class
class Sample
{
};
suppose in main() you do like here
Sample obj1;
Sample obj2 = obj1; // Copy cons called here.
// then you call a function like this
fun(obj1); //Copy cons called here.
| Is This Answer Correct ? | 1 Yes | 1 No |
What is a function in oop?
Explain the advantages of inheritance.
When a private constructer is being inherited from one class to another class and when the object is instantiated is the space reserved for this private variable in the memory??
what is the 3 types of system development life cycle
what is a virtual class?
5 Answers Cap Gemini, IBM, Infosys, Trinity Technologies,
Please send ford technologies placement paper 2 my mail id
What is the default size allocated for array in the statement if size not specified " int a[] "
write a function that takes an integer array as an input and finds the largest number in the array. You can not sort array or use any API or searching needs?
2 Answers IBMS, Zycus Infotech,
What is solid in oops?
what is virtual function?
Can you explain polymorphism?
WRITE A SIMPLE C++ PROGRAM TO SWAP TWO NOS WITHOUT USING TEMP