Articles of operatore

Cosa sono i Pointer-to-Member -> * e. * Operatori in C ++?

Sì, ho letto questa domanda e questa FAQ (link errato) questa FAQ , ma ancora non capisco cosa ->* e .* Significhi in C ++. Queste pagine forniscono informazioni sugli operatori (come il sovraccarico), ma non sembrano spiegare bene cosa siano . Cosa sono ->* e .* In C ++ e quando è necessario usarli […]

Omettere la seconda espressione quando si utilizza la stenografia if-else

Posso scrivere la stenografia ‘if else’ senza il resto? var x=1; x==2 ? dosomething() : doNothingButContinueCode(); Ho notato mettere null per le altre opere (ma non ho idea del perché o se è una buona idea). Modifica: alcuni di voi sembrano confusi perché mi preoccuperei di provarlo. Siate certi che è puramente per curiosità. Mi […]

Linee guida per la precedenza degli operatori Java

La mancata comprensione della precedenza degli operatori Java è una fonte di domande frequenti e di errori impercettibili. Sono rimasto incuriosito dall’apprendere che anche la specifica del linguaggio Java dice: “Si raccomanda che il codice non si basi in modo cruciale su questa specifica”. JLS §15.7 Preferendo chiaro a intelligente , ci sono delle linee […]

Comprensione dell’operatore AND bit a bit

Ho letto degli operatori di bit in Objective-C nel libro di Kochan, “Programming in Objective-C”. Sono MOLTO confuso riguardo a questa parte, anche se ho davvero capito la maggior parte di tutto ciò che mi è stato presentato finora. Ecco una citazione dal libro: L’operatore bitwise AND L’ANDing bit a bit viene spesso utilizzato per […]

L’operatore ternario (condizionale) in C

Qual è la necessità dell’operatore condizionale? Funzionalmente è ridondante, poiché implementa un costrutto if-else. Se l’operatore condizionale è più efficiente dell’assegnazione if-else equivalente, perché non può essere altrimenti interpretato in modo più efficiente dal compilatore?

Perché l’operatore ternario esegue inaspettatamente il cast degli integer?

Ho visto discusso da qualche parte che il codice seguente risulta essere un Double , ma che stampa 200.0 dal lato sinistro. Object obj = true ? new Integer(200) : new Double(0.0); System.out.println(obj); Risultato: 200.0 Tuttavia, se metti un object diverso sul lato destro, ad esempio BigDecimal , il tipo di object è Integer come […]

Operatore di conversione delle conversioni e conversione: precedenza

Leggere alcune domande qui su SO sugli operatori di conversione e sui costruttori mi ha fatto pensare all’interazione tra loro, ovvero quando c’è una chiamata “ambigua”. Considera il seguente codice: class A; class B { public: B(){} B(const A&) //conversion constructor { cout << "called B's conversion constructor" << endl; } }; class A { […]

Restituisce il tipo di ‘?:’ (Operatore condizionale ternario)

Perché il primo restituisce un riferimento? int x = 1; int y = 2; (x > y ? x : y) = 100; Mentre il secondo no? int x = 1; long y = 2; (x > y ? x : y) = 100; In realtà, il secondo non è stato compilato affatto – “non […]

Che cos’è un punto interrogativo “?” E “due punti”: “Operatore utilizzato?

Due domande sull’utilizzo di un punto interrogativo “?” e due punti “:” operatore tra parentesi di una funzione di stampa: cosa fanno? Inoltre, qualcuno conosce il termine standard per loro o dove posso trovare maggiori informazioni sul loro uso? Ho letto che sono simili a una frase ‘if’ ‘else’. int row = 10; int column; […]

A ternario o no a ternario?

Sono personalmente un sostenitore dell’operatore ternario: ()? :; Mi rendo conto che ha il suo posto, ma mi sono imbattuto in molti programmatori che sono completamente contrari a usarlo e alcuni che lo usano troppo spesso. Quali sono i tuoi sentimenti su di esso? Quale codice interessante hai visto utilizzarlo?