thể trùng lặp:
What's the point of the var keyword?Mục đích của 'var' là gì?
Tôi không hỏi làm thế nào nó hoạt động. Tôi đang không phải hỏi xem nó có ảnh hưởng đến hiệu suất hay không. Tôi đã biết những câu trả lời đó rồi.
Tôi muốn biết điều gì đã truyền cảm hứng cho nhóm MS C# để thêm nó vào ngôn ngữ ngay từ đầu. Bạn không thêm những thứ phù phiếm vào một ngôn ngữ. Phải có một vấn đề đáng chú ý mà nó giải quyết được. Vấn đề là gì?
Ví dụ gần nhất tôi đã nhìn thấy "vấn đề nó giải quyết" được khi sử dụng các loại vô danh, như thế này:
var linqResult = from element in SomeCollection s
elect new { element.A, element.B }
Sự trớ trêu về việc sử dụng này là phong cách và mã hóa-tiêu chuẩn hướng dẫn (ví dụ như do Microsoft cung cấp) khuyên người lập trình nên tránh sử dụng 'var' khi loại kết quả không rõ ràng. Nói cách khác, mục đích (có lẽ) nhằm mục đích của 'var' là mâu thuẫn với các nguyên tắc tiêu chuẩn mã hóa.
Nếu tôi đang viết các tiêu chuẩn mã hóa và cố gắng ngăn chặn lạm dụng 'var', tôi có khuynh hướng nói "sử dụng" var "chỉ để trả lời các loại ẩn danh". Nhưng điều đó mang lại cho câu hỏi toàn vòng tròn: những gì đã là/là mục đích của việc thêm 'var' vào ngôn ngữ?
bạn thực sự đã trả lời câu hỏi của bạn.'var' đã được giới thiệu để hỗ trợ các kiểu ẩn danh, bởi vì không có cách nào khác để có biến kiểu ẩn danh. – Andrey
Bạn đã có câu trả lời: mục đích ban đầu là xử lý các loại ẩn danh. –
@David - Bingo, tôi đang tìm kiếm điều đó. – ChaosPandion