# Understanding Compound Assignment

Chia sẻ: Nghia Tuan | Ngày: | Loại File: PDF | Số trang:1

0
41
lượt xem
3

## Understanding Compound Assignment

Mô tả tài liệu

Hiểu Compound chuyển nhượng C # không cho phép bạn khai báo bất kỳ nhà khai thác giao người dùng định nghĩa. Tuy nhiên, một nhà điều hành phân công hợp chất (như + =) là luôn luôn đánh giá về điều hành liên quan của nó (ví dụ như +).

Chủ đề:

Bình luận(0)

Lưu

## Nội dung Text: Understanding Compound Assignment

1. Understanding Compound Assignment C# does not allow you to declare any user-defined assignment operators. However, a compound assignment operator (such as +=) is always evaluated in terms of its associated operator (such as +). In other words, this: a += b; Is automatically evaluated as this: a = a + b; In general, the expression a @= b (where @ represents any valid operator) is always evaluated as a = a @ b. If you have declared the appropriate simple operator, it is automatically called when you use its associated compound assignment operator. For example: Hour a = ...; int b = ...; a += a; // same as a = a + a a += b; // same as a = a + b The first compound assignment expression (a += a) is valid because a is of type Hour, and the Hour type declares a binary operator+ whose parameters are both Hour. Similarly, the second compound assignment expression (a += b) is also valid because a is of type Hour and b is of type int. The Hour type also declares a binary operator+ whose first parameter is an Hour and whose second parameter is an int. Note, however, that you cannot write the expression b += a because that's the same as b = b + a. Although the addition is valid, the assignment is not because there is no way to assign an Hour to the built-in int type.