Ngay bây giờ tôi có một thiết lập lớp tương đối đơn giản:C# hành vi foreach với các lớp học có nguồn gốc?
class A{
//stuff
}
class B:A{
//more stuff
}
public List<A> ListOfObjects;
Điều gì sẽ xảy ra nếu tôi làm
foreach(B i in ListOfObjects)
tôi sẽ chỉ nhận được đối tượng thuộc loại B? Nó sẽ áp dụng một số phép thuật OO và chuyển đổi tất cả As sang Bs? Điều này thậm chí sẽ làm việc?