Khi nào một chức năng nên bao gồm một tuyên bố trả lại rõ ràng trong Julia?


8

Khi nào thì một hàm trong Julia có câu lệnh return sử dụng từ khóa return và khi nào nó nên trả về khi có biến tôi muốn trả về ở cuối hàm?

Tôi đã đọc các tài liệu của Julia và có vẻ như có khá nhiều tài liệu về chủ đề được tìm thấy ở đây .

Sự hiểu biết của tôi là quy ước là luôn luôn sử dụng returnnếu bạn đang cố gắng thoát ra khỏi hàm và chỉ cần có biến bạn muốn trả về ở cuối hàm.

Sự hiểu biết của tôi là chính xác hay tôi đang thiếu một cái gì đó ở đây?

Câu trả lời:



4

Về mặt kỹ thuật, bạn phải sử dụng returntừ khóa nếu trở về CodeInfotừ một @generatedhàm. Do một lỗi tồn tại lâu https://github.com/JuliaLang/julia/issues/25678 Sẽ xuất hiện nếu bạn đang cố gắng thực hiện trình biên dịch kiểu Cassette được thông qua hoặc tương tự (xem bài đăng trên blog tôi đã viết trên đó)

Với những gì đã nói, điều này rất khó hiểu đến nỗi tôi thực sự ngần ngại khi đưa ra câu trả lời này. Đối với tất cả, ngoại trừ hàng chục người sẽ cố gắng làm điều đó, Sự hiện diện của sự trở lại hay không trong tuyên bố cuối cùng hoàn toàn là một vấn đề của phong cách.


4

Đó là một vấn đề của hương vị, nhưng tôi rất thích các returntuyên bố rõ ràng trong các hàm đa dòng.

Tôi luôn luôn thực hiện gấp đôi và bối rối trong một giây rưỡi bất cứ khi nào tôi thấy một biến đơn độc hoặc biểu thức treo lủng lẳng trên dòng cuối cùng. Tôi thấy nó kỳ lạ và không phù hợp.

returnTuyên bố rõ ràng cải thiện khả năng đọc rất nhiều, imho.


3

Đây hoàn toàn là phong cách. Không bao giờ cần thiết phải sử dụng returntừ khóa. Cá nhân, tôi không sử dụng nó.


1
Vâng, bạn cần nó nếu bạn muốn trở về từ trong luồng kiểm soát.
Fredrik Bagge
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.