01/10/2018, 15:59

Cú pháp lạ trong C++

Cho mình hỏi cú pháp gán này làm gì trong C++ thế, mình mới gặp lần đầu:

#include <iostream>
using namespace std;

int main()
{
	int n, x = 7;
	x = x - 1;
	n = (n = 5, n *= 10 + x); //????
	x--;
}
Lam Pham viết 18:07 ngày 01/10/2018

Cái này gọi là comma operator.

Tóm tắt: các biểu thức sẽ thực hiện tuần tự từ trái sang phải, rồi kết quả được gán bởi giá trị của biểu thức cuối cùng.

Đoạn trên tương đương với:

n = 5;
n *= 10 + x;
n = n;
HelloWorld viết 18:15 ngày 01/10/2018

Không biết mấy cái này dùng vào đâu và có thuận lợi gì. Nhưng như kiểu đánh đố nhau ấy. Cố gắng làm code phức tạo lên. Trong khi lối code nên hướng đến là clean code. Gọn. Rõ ràng, dễ hiểu, hạn chế lỗi, dễ bảo trì. Có những cách khác cũng có thể giải quyết phép toán trên nhưng đơn giản hơn thì ta nên dùng cách đó

Bài liên quan
0