Tôi có điều này:Tại sao phải bận tâm với initializers? (.net)
AudioPlayer player = new AudioPlayer();
player.Directory = vc.Directory;
player.StartTime = vc.StarTime;
player.EndTime = vc.EndTime;
Nhưng tôi có thể có điều này:
AudioPlayer player = new AudioPlayer
{
Directory = vc.Directory,
StartTime = vc.StarTime,
EndTime = vc.EndTime
};
Nếu tôi chuyển sang 'phương pháp mới để viết những thứ', để tôi đạt được những gì ngoài unreadability? Nó sẽ làm cho tôi gần gũi hơn với hàm lambda (=>)?
Có liên quan gì với RAII không?
ADDITION:
Một số trả lời rằng khởi bình thường có thể rời khỏi đối tượng trong 'hợp lệ' nhà nước sau khi ví dụ thiết lập chỉ là một tài sản xuất khẩu - quan sát của tôi ở đây là đó là người đã thiết kế các đối tượng có thể thiết kế nó trong một cách mà chỉ các giá trị PHẢI được nhập thực sự mới được nhập thông qua hàm tạo thực, và tất cả các giá trị khác có thể được sửa đổi tự do sau này.
Vâng, có vẻ như linh cảm của tôi về lambdas là chính xác! –
Kiểm tra sách ngôn ngữ C# yêu thích của bạn cho "các loại ẩn danh". –
@Hans: như trong 'ad-hoc-property-containers'? –