tôi muốn trả lời this question sử dụng lập trình meta, nhưng các quy tắc Phạm vi của vòng lặp for đang gây ra các biến của tôi không được định nghĩa ở phía trên nhất (REPL) Phạm vi:Khai báo các biến cấp cao nhất trong Julia sử dụng lập trình meta
for x = [:A1, :A2]
@eval x = rand(2,2)
end
Tôi biết có lẽ là một cách dễ dàng xung quanh điều này, nhưng bộ não đêm thứ sáu của tôi không thể nghĩ ra. Có thể một trong số các bạn lập trình meta metaprogramming giúp tôi tìm ra giải pháp ngắn gọn không? (Tôi nhận ra một macro có thể làm việc với thoát, nhưng tôi đang cố gắng để nghĩ ra một cái gì đó ngắn hơn)
Tôi đã thấy điều đó và tự hỏi làm thế nào bạn sẽ metaprogram nó nếu bạn đã có hàng trăm A. 'cho x = 1: 100' và sau đó là gì? Các tên biến có thể được lập trình như thế nào? – rickhg12hs
Đã trả lời nhận xét/câu hỏi của riêng tôi. 'cho k = 1: 10 my_sym = symbol (" A "* string (k)); @eval $ my_sym = rand (2,2) end' (Hiển thị ở đây tạo A1 đến A10.) – rickhg12hs