Tôi đang xem nhúng Lua trong một ứng dụng C++ tôi đang phát triển. Ý định của tôi là sử dụng Lua để viết các hoạt động được sắp xếp theo thứ tự nào để thực hiện cho một số đầu vào cụ thể, tức là. nhận một mục công việc mới trong chương trình C++, chuyển chi tiết tới Lua backend, Lua gọi lại vào C++ để thực hiện công việc cần thiết, trả về kết quả đã hoàn thành.Làm thế nào để vượt qua lớn cấu trúc qua lại giữa giữa C + + và Lua
Cấu trúc dữ liệu chính có liên quan là lớn (khoảng 80+ thành viên) struct
. Tôi (rất) mới với Lua và không chắc chắn làm thế nào tôi có thể vượt qua nó đến và đi từ ứng dụng máy chủ của tôi và trạng thái Lua nhúng.
Như vậy đến nay tôi thấy các tùy chọn của tôi là:
a) Đẩy/Popping tất cả các thành viên dữ liệu cá nhân vào stack khi qua đến/từ C++ và Lua (âm thanh lộn xộn).
b) Xây dựng một bảng và điền bằng các giá trị, sau đó đặt nó vào/tắt ngăn xếp (một chút dọn dẹp).
c) Chuyển nó thành userdata
(ánh sáng/nặng?) (Tôi phác thảo về điều này và không chắc chắn liệu/sau đó tôi có thể truy cập từ phía Lua để truy vấn những thao tác cần thiết).
Mọi hướng dẫn sẽ được đánh giá cao.
Tôi có thể truyền từ dữ liệu bộ chuyển đổi ánh sáng đến đối tượng mục tiêu-c. Tôi tưởng tượng nó sẽ làm việc tương tự cho một cấu trúc. –