Augmented assignment là gì?
- ★
- ★
- ★
- ★
- ★
Augmented assignment hoặc compound assignment là tên được đặt cho các toán tử gán (assignment operator) nhất định trong các ngôn ngữ lập trình nhất định (đặc biệt là các ngôn ngữ có nguồn gốc từ C). Augmented assignment thường được sử dụng để thay thế một câu lệnh (statement) trong đó toán tử nhận một biến (variable) làm một trong các đối số (argument) của nó và sau đó gán lại kết quả cho cùng một biến đó. Một ví dụ đơn giản là x += 1 được khai triển thành x = x + 1). Các cấu trúc tương tự thường có sẵn cho các toán tử hai ngôi (binary operator) khác nhau.
Ví dụ: câu lệnh sau hoặc một số biến thể của nó có thể được tìm thấy trong nhiều chương trình:
x = x + 1;
Điều này có nghĩa là "tìm số được lưu trong biến x, thêm 1 vào nó và lưu kết quả của phép cộng vào biến x." Có vẻ như đơn giản như vậy, nó có thể không hiệu quả, trong đó vị trí bộ nhớ (location) của biến x phải được tra cứu hai lần nếu trình biên dịch (compiler) không nhận ra rằng hai phần của biểu thức giống hệt nhau. Để so sánh, đây là phiên bản của augmented assignment.
x += 1;
Dưới đây là một số augmented assignment khác như:
x *= 1;
x /= 5;
a %= b;
Learning English Everyday