Đọc rất nhiều về Null propagation operator ?.
, tôi thấy không có câu trả lời cho dù đó là hữu ích trong kịch bản sau đây.Null tuyên truyền nhà điều hành và foreach
Mã mà ném:
int[] values = null;
foreach (var i in values) // Throws since values is null.
{
// ...
}
Để làm việc này, tôi có thêm một tấm séc null
trước khi truy cập vào biến values
.
Rất có thể mã trên nằm ngoài phạm vi của các cân nhắc thiết kế cho toán tử tuyên truyền Null. Tuy nhiên, để chắc chắn, tôi phải hỏi.
Câu hỏi của tôi:
là các nhà điều hành công tác tuyên truyền Null hữu ích khi cố gắng truy cập null
bộ sưu tập trong một vòng lặp foreach
?
Không phải câu trả lời nhưng bạn có thể viết ' foreach (var i trong các giá trị ?? Enumerable.Empty()) 'để tránh làm tổ. –
Hoặc sử dụng ArrayList hoặc Danh sách thay vào đó :) –
boctulus
@Boctulus Đó là các loại tham chiếu không có giá trị, bạn biết không?!? –