En C, les opérateurs peuvent être surchargés pour des types de données personnalisés, offrant ainsi des comportements personnalisés. Cependant, les méthodes virtuelles, permettant un comportement polymorphe, ne peuvent pas être directement utilisées pour la surcharge d'opérateurs.
Considérons le désir de créer un opérateur virtuel << pour personnaliser l'impression d'une classe Publicitaire. Tentatives de définition d'un opérateur ami virtuel << entraîne une erreur du compilateur, indiquant que seules les fonctions et bases membres peuvent être virtuelles.
Pour contourner cette limitation, l'opérateur << ne peut pas être rendu virtuel directement. Au lieu de cela, une nouvelle fonction membre virtuelle print peut être ajoutée à la classe Advertising. Le ≪≪ L'opérateur << l'opérateur maintient l'ordre correct des paramètres pour une utilisation pratique.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!