Example
class
MyClass
{
public
:
void
function();
private
:
char
*data;
};
Solution
Always implement an assignment operator for classes with references to memory.
class
MyClass
{
public
:
void
function
();
MyClass
&
operator
=(
const
MyClass
& rightSide){
if (this == &rhs){
return *this;
}
else if(*data == rightSide;{
return *this;
}
}
private
:
char
*data;
};
Solution
Disable use of assignment by declaring one private.
class
MyClass
{
public
:
void
function
();
private
:
char
*data;
MyClass
&
operator
=(
const
MyClass
& rightSide);
};