2014-06-16 11 views
5

Say I được xác định một loại constructor Box:Đối với "Box [+ T]", tôi có thể nói "Loại hộp là biến thể" không, có đúng không?

trait Box[+T] 

là gì đúng không?

  1. loại Box là hiệp biến
  2. loại constructor Box là hiệp biến
  3. loại tham số T là hiệp biến
  4. loại tham số T trong loại constructor Box là hiệp biến
  5. Nếu tất cả chúng đều không chính xác, là những gì biểu thức chính xác?
+3

"loại Hộp là biến thể ** trong T **" – Ven

+0

Nếu tôi không nhớ sai, 'Hộp' không phải là' loại', nhưng là một 'kiểu hàm tạo'? – Freewind

+0

@Ven Tại sao không chỉ đăng câu trả lời vì đó là câu trả lời đúng? – LMeyer

Trả lời

1

Người đúng là:

"loại Box là hiệp biến trong T"

+0

" Queue, như được định nghĩa trong Liệt kê 19.4, là một đặc điểm, nhưng không phải là một kiểu. " xem: của cuốn sách "lập trình trong scala" – Freewind

+0

Có, Hàng đợi có thể là một đặc điểm, vì vậy? – Ven

+0

không phải là loại – Freewind

5

Về sai từ cuốn sách Functional Programming in Scala:

Trong tuyên bố trait List[+A], các + trước thông số loại A là chú thích phương sai phương sai báo hiệu rằng A là thông số hoặc tham số “dương” của List. Điều này có nghĩa là , ví dụ: List[Dog] được coi là loại phụ của List[Animal], giả sử Dog là một loại phụ của Animal.

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