tôi đã cố gắng để làm một cái gì đó như thế này nhưng điều này không làm việc:quá tải indexer có lớp foreach'able
class Garage
{
private List<Car> cars = new List<Car>();
public Car this[int i]
{
get { return cars[i]; }
}
//...
}
Garage g = new Garage();
//get CS1579 - no GetEnumerator definition
foreach (Car c in g)
{
//...
}
Như MSDN nói indexers có thể bị quá tải, vì vậy tôi quyết định hỏi các chuyên gia ở đây. Làm thế nào để quá tải chỉ mục để hợp tác với vòng lặp foreach
?
ah, bạn đánh tôi vào punch 10 giây .. đã xóa câu trả lời của tôi và cho bạn +1. Câu trả lời tốt –
Cảm ơn, không cho rằng nó dễ dàng như vậy – nan
Giao diện 'IEnumerable' không chung chung cũng phải được triển khai, tôi nghĩ vậy. –