Gần đây tôi đã bắt đầu Erlang và tôi nhận thấy tôi liên tục nhận được "Cảnh báo: biến X không được sử dụng" trong khi biên dịch. Ví dụ: lấy hàm sau, tìm phần tử tối đa trong danh sách:Cảnh báo về các biến không sử dụng trong Erlang
max([Head|Tail]) ->
max(Head,Tail).
max(Element,[Head | Tail]) when Element < Head ->
max(Head,Tail);
max(Element,[Head | Tail]) ->
max(Element, Tail);
max(Element,[]) ->
Element.
Trình biên dịch cảnh báo tôi rằng trong trường hợp thứ 3 của hàm, đầu không được sử dụng. Làm thế nào chức năng có thể được viết mà không có Head?
Hai câu cuối cùng của bạn mâu thuẫn với nhau. –
Tôi nghi ngờ "sử dụng" trong trường hợp này có nghĩa là "sử dụng giá trị teh bị ràng buộc" thay vì "sử dụng cấu trúc _Name". – Vatine
Với "sử dụng một biến" tôi có nghĩa là tham chiếu nó trong mã, và "sử dụng một tên biến" Tôi có nghĩa là đặt tên nó một cái gì đó. –