Không chắc chắn rằng tiêu đề có được đặt hay không. Đề nghị chào đón.Cách đặt bí danh tên hàm trong Fortran
Đây là những gì tôi muốn làm. Kiểm tra một điều kiện, và sau đó quyết định chức năng để sử dụng trong một vòng lặp. Ví dụ:
if (a < 0) then
loop_func = func1
else
loop_func = func2
endif
Tôi có thể sử dụng loop_func
làm con trỏ khi viết vòng lặp của mình. Cả hai hàm đều lấy chính xác các đầu vào giống nhau và là các cách tiếp cận khác nhau để giải quyết vấn đề dựa trên giá trị của a
. Điều này sẽ cho phép tôi chỉ có một khối mã, thay vì hai khối gần giống nhau. Điều này cũng có thể áp dụng cho các chương trình con.
Bất kỳ ý tưởng nào về cách triển khai này có thể được thực hiện?
Cảm ơn bạn.
Phương ngữ này là gì? – wallyk
Hmm ... vì vậy '=>' là một loại toán tử gán cho con trỏ, và 'procedure (func)' là một kiểu khai báo cho các thủ tục, như 'type (mytype)' là cho các kiểu có nguồn gốc. Tôi giả sử 'null()' được sử dụng để khởi tạo và tương đương với 0. Như bạn có thể nói tôi là người mới bắt đầu ở đây.Và vâng, Fortran là ngôn ngữ lập trình đầu tiên tôi học đúng cách. –
Một vài câu hỏi. Giao diện 'là gì? Đó có phải là cách để xác định một thủ tục (một lần nữa, như kiểu dẫn xuất), và để đảm bảo rằng những gì con trỏ trỏ đến là của "loại" chính xác? Ngoài ra, bạn có một 'stop' trước khi kết thúc chương trình của bạn. Đó có phải là thực hành tốt nhất, và tôi nên bao gồm trong mã của tôi không? –