Tôi có điều này ít scala dụ:scala không cảnh báo về tính toán không sử dụng hoặc giá trị
object Test {
def add(x: Int, y: Int) = {
val z = x - y
x match {
case 0 => 0 - y
case 1 => 1 - y
case _ => x - y
}
x + y
}
def main(args: Array[String]) {
println(add(5, 6))
}
}
tôi cảm thấy scala cần cảnh báo về 'z' và 'x trận đấu ...' là không sử dụng. Tôi đã không nhận thấy bất kỳ tùy chọn trình biên dịch nào để bật thêm cảnh báo. Tôi đang sử dụng scala 2.10.1.
Suy nghĩ? Cảm ơn!
Đây là mã scala hoàn toàn hợp lệ như được trình biên dịch chỉ ra. Cảnh báo biến không được sử dụng thường là thứ mà trình phân tích mã nguồn sẽ tìm và cảnh báo. Đối với một đoạn mã tương tự, trình biên dịch 'java' cũng không hiển thị cảnh báo. – Brian
@Brian Tôi không chắc chắn javac là điểm chuẩn. 3 nhân viên nói, tôi không cần sự an toàn của loại stinkin! Tôi đã cắt giảm một số điểm yếu trong trận đấu, nhưng nó vẫn cố gắng giảm bớt sự mệt mỏi. Nó có thể cảnh báo về việc loại bỏ các giá trị cho Đơn vị, cho thấy nó sẽ cảnh báo nếu nó có thể cảnh báo. –
Thử thêm tùy chọn trình biên dịch '" -Ywarn-value-discard "'. –