2013-03-30 31 views

Trả lời

8

Kinh nghiệm gỡ lỗi dường như làm một công việc nghèo của việc xác định ràng buộc chính xác cho các định danh. Trong ví dụ của bạn, điều này có nghĩa là bất kỳ số nhận dạng nào được gọi là Source thực sự hiển thị giá trị của this.Source, thay vì thuộc tính tương ứng của đối tượng chính xác. Lưu ý rằng bạn có thể nhận được giá trị phù hợp bằng cách di chuột qua y và mở rộng các thành viên (mặc dù điều này rõ ràng không phải là trải nghiệm tuyệt vời).

Thậm chí còn khó hiểu hơn cách mà vấn đề này thể hiện:

type T() = 
    member val P = 1 

    member this.DoSomething() = 
     let P = "test"  // set breakpoint here, hover over P 
     printfn "%i" this.P // set breakpoint here, hover over P 

T().DoSomething() 

Bây giờ, bất cứ thể hiện của P bạn di chuột qua, bạn sẽ có được điều sai!

+0

Vì vậy, có nghĩa là Studio có một chút lỗi? Hoặc nó chỉ là một mẹo mà tôi nên nhớ? – Vladimir

+4

Tôi chắc chắn sẽ gọi đó là lỗi, vâng. – kvb

Các vấn đề liên quan