What is the difference between a copy constructor and an
overloaded assignment operator?
Answers were Sorted based on User's Feedback
Answer / guest
A copy constructor constructs a new object by using the
content of the argument object. An overloaded assignment
operator assigns the contents of an existing object to
another existing object of the same class.
| Is This Answer Correct ? | 44 Yes | 12 No |
Answer / siddharth wighe
Second main difference:
A copy constructor has no return type, whereas an
overloaded assignment operator has one.
Third difference (trivial):
Name of the copy constructor is the same as that of the
class in which it is defined
----------------------
http://swighe.nipl.net
| Is This Answer Correct ? | 32 Yes | 7 No |
Answer / neelkamal yadav
A copy constructor constructs a new object by using the content of the argument object. An overloaded assignment operator assigns the contents of an existing object to another existing object of the same class.
First, the applicant must know that a copy constructor is one that has only one argument of the same type as the constructor. The compiler invokes a copy constructor wherever it needs to make a copy of the object, for example to pass an argument by value. If you do not provide a copy constructor, the compiler creates a member- by-member copy constructor for you.
You can write overloaded assignment operators that take arguments of other classes, but that behavior is usually implemented with implicit conversion constructors. If you do not provide an overloaded assignment operator for the class, the compiler creates a default member- by-member assignment operator.
This discussion is a good place to get into why classes need copy constructors and overloaded assignment operators. If the applicant discusses these with respect to data member pointers that point to dynamically allocated resources, the applicant probably has a good grasp of the problem.
| Is This Answer Correct ? | 0 Yes | 0 No |
Answer / vsinghal
In case of copy constructor when the object goes out of
scope its destructor will be called while in case of
assignment operator no destructor will be called.
| Is This Answer Correct ? | 12 Yes | 14 No |
Difference between shift left and shift right?
Write a Program for dynamically intialize a 2 dimentional array. Eg:5x20, accept strings and check for vowels and display the no.finally free the space allocated .
What apps are written in c++?
What is searching?
Is c++ a programming language?
In a function declaration what does extern means?
Assume an array of structure is in order by studentID field of the record, where student IDs go from 101 to 500. Write the most efficient pseudocode algorithm you can to find the record with a specific studentID if every single student ID from 101 to 500 is used and the array has 400 elements. Write the most efficient pseudocode algorithm you can to find a record with a studentID near the end of the IDs, say in the range from 450 to 500, if not every single student ID in the range of 101 to 500 is used and the array size is only 300
What is the difference between object-oriented programming and procedural programming?
What are special characters c++?
How does a copy constructor differs from an overloaded assignment operator?
What is a smart pointer?
What is stack unwinding?