compound-operator

In C-ähnlichen Sprachen kann "x = x + y" als "x + = y" codiert werden. Dies ist ein zusammengesetzter Operator. Es gibt einen solchen Operator für jeden arithmetischen, logischen und bitweisen Operator.
3
Antworten

Java: + = Äquivalenz

ist: %Vor% entspricht: %Vor%     
10.03.2010, 04:31
1
Antwort

___ tag123casting ___ Casting ist ein Prozess, bei dem ein Objekttyp explizit in einen anderen Typ konvertiert wird, wenn die Konvertierung zulässig ist. Dieser Prozess könnte zu einer Wertänderung führen. ___ tag123compoundoperator ___ In C-ähnlichen Sprachen kann "x = x + y" als "x + = y" codiert werden. Dies ist ein zusammengesetzter Operator. Es gibt einen solchen Operator für jeden arithmetischen, logischen und bitweisen Operator. ___ answer6844948 ___

Weil %code% äquivalent zu %code% ist, während %code% standardmäßig auf %code% operation ist, weisen Sie ein int zu, das char umgewandelt werden muss.

Aus der %code% ,

  

Ein zusammengesetzter Zuordnungsausdruck der Form E1 op = E2 ist äquivalent   zu E1 = (T) ((E1) op (E2)), wobei T der Typ von E1 ist, außer dass E1   wird nur einmal ausgewertet. Beachten Sie, dass die implizierte Umwandlung für Typ T sein kann   entweder eine Identitätskonvertierung (? .1.1) oder ein sich verengendes Primitiv   Umwandlung (? .1.3).

    
___ qstntxt ___

Frage:

%Vor%     
Was ist der Unterschied von x = x + 3 und x + = 3? Warum braucht man Typcast und der andere nicht? ___

Frage: %Vor%      Was ist der Unterschied von x = x + 3 und x + = 3? Warum braucht man Typcast und der andere nicht?
27.07.2011, 13:15
3
Antworten

Warum würde ich + = l kompilieren, wo ich int und l lang ist?

Ich entdeckte Java's + =, - =, * =, / = zusammengesetzte Zuweisungsoperatoren (gute Frage :)) , aber es hatte einen Teil, den ich nicht ganz verstehe. Entlehnung von dieser Frage: %Vor%       Dann wird i = i + l; nicht kompiliert, aber...
03.01.2012, 14:03