Tôi có đoạn code sau đây viết bằng cả C++ và C#++ i chênh lệch điều hành trong C# và C++
int i=0;
++i = 11;
Sau khi biên dịch C# này mang lại một lỗi
The left-hand side of an assignment must be a variable, property or indexer
Nhưng C++ biên dịch tạo ra mã này không có lỗi và tôi nhận được kết quả 11
với giá trị là i
. Lý do của sự khác biệt này là gì?
offtopic: tại sao bạn muốn tăng nó và sau đó trực tiếp đặt nó thành 11? Sự gia tăng không có ý nghĩa. – RvdK
Việc sử dụng mã này là gì? –
'someArray [++ i] = 11' sẽ có ý nghĩa hơn. –