Exemple
class
MyClass
{
public
:
void
function();
private
:
char
*data;
};
Solution
Implémentez toujours un opérateur d'affectation pour les classes avec références à la mémoire.
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
Interdisez l'utilisation de l'affectation en déclarant une affectation privée.
class
MyClass
{
public
:
void
function
();
private
:
char
*data;
MyClass
&
operator
=(
const
MyClass
& rightSide);
};