Operatori in C e C++: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Creata dalla traduzione della pagina "Operators in C and C++" |
Nessun oggetto della modifica |
||
Riga 1:
Questa è una lista degli [[Operatore (informatica)|operatori]] nei [[Linguaggio di programmazione|linguaggi di programmazione]] [[C (linguaggio di programmazione)|C]] e [[C++]]. Tutti gli operatori elencati di seguito (eccetto ''typeof'') esistono nel linguaggio C++, mentre in C solo quelli indicati nella colonna “Incluso in C”.
C++ include inoltre gli operatori ''type conversion'' (): const_cast, static_cast, dynamic_cast, e reinterpret_cast. La formattazione di questi operatori intende che il livello di precedenza è irrilevante.
Molti degli operatori disponibili in C e C++ sono implementabili anche in altri linguaggi della “C family”, quali [[C sharp|C#]], [[D (linguaggio di programmazione)|D]], ma anche [[Java (linguaggio di programmazione)|Java]], [[Perl]] e [[PHP]], con le stesse caratteristiche (precedenze, associatività e semantica).
== Overloading degli operatori ==
[[C++]] possiede molti operatori già predifiniti in grado di operare su vari [[Tipo di dato|tipi di dato]], perciò si può parlare di “operatori già sovraccaricati”. Per esempio l’operatore <code>+</code> può essere implementato per sommare sia due variabili di tipo <code>int</code> (interi), sia due variabili di tipo <code>float</code> o <code>double</code> (variabili a virgola mobile).
Oltre a quando detto in precedenza, il programmatore può anche “estendere” l’operatività di ciascuno di essi; per esempio operandi complessi definiti con le classi, si potrebbero trattare anche come se fossero dati semplici.
In C++ è possibile sovraccaricare tutti gli operatori predifiniti, con l’eccezione su accesso al membro <code>(.)</code>, indirezione di accesso al membro <code>(.*)</code> e risoluzione di ambito <code>(::)</code>.
Nel caso degli operatori, il numero degli operandi e la priorità dell’operatore sovraccaricato sono le stesse dell’operatore predefinito, mentre il nuovo operatore può essere definito come una funzione membro oppure come una funzione friend (funzione amica).
== Tabella degli operatori ==
Riga 360 ⟶ 323:
[[Categoria:C++]]
[[Categoria:C]]</nowiki>
<references group="lower-alpha" />
|