Possiamo dichiarare una funzione come questa in C++:Possiamo sovraccaricare gli operatori per i tipi built-in come int o float?
int operator + (int , int);
Le vostre risposte saranno apprezzati!
Grazie
Possiamo dichiarare una funzione come questa in C++:Possiamo sovraccaricare gli operatori per i tipi built-in come int o float?
int operator + (int , int);
Le vostre risposte saranno apprezzati!
Grazie
Sì: È possibile passare interi e galleggianti in funzioni sovraccaricate
No: non è possibile sovraccaricare/sovrascrivere gli operatori per la costruzione tipi, quando il tipi built-in sono su entrambi i lati l'espressione .
Non è possibile ridefinire un operatore integrato. L'overloading dell'operatore è progettato per consentire all'utente di estendere la lingua, non per modificare . Almeno uno dei parametri di un operatore sovraccarico deve essere un tipo definito dall'utente (classe o tipo enum) o un riferimento a un tipo definito dall'utente.
È questa restrizione contro lo spirito del C++ non impedire mai a un programmatore di spararsi al piede? – ibrahim5253
Non è possibile sovraccaricare gli operatori per i tipi integrati. – juanchopanza
Il corpo delle domande sembra non avere nulla a che fare con il titolo. Cosa stai chiedendo? – Dariusz
penso che l'argomento debba essere object, se ti è permesso di sovraccaricare il tipo int l'operazione aritmetica generale sarà un caos –