Tôi đang thiết kế một phần mềm trung gian truyền thông để sử dụng trong một ứng dụng có mô-đun trong Ada và nhiều mô-đun trong C++, giao tiếp các tham số truyền (giá trị vô hướng) và cấu trúc. Ứng dụng chạy trong MS Windows XP và Windows 7, phần C++ đang được phát triển trong MSVC++ 2008, phần Ada đang được phát triển bằng cách sử dụng GPS/GNAT. Phiên bản Ada là 1995 nhưng chúng tôi đang ở giữa quá trình di chuyển trình biên dịch (phiên bản mới hơn của GPS/GNAT) với khả năng sử dụng thông số Ada mới hơn.Bản ghi biến thể Ada có thể tương thích nhị phân với liên minh C++ không?
Phần giữa được viết bằng C++ và tôi muốn sử dụng loại công đoàn có chứa tất cả các loại được chuyển giữa các mô-đun, vì vậy tôi sẽ không cần chỉ định một hàm nạp/nhận cho từng loại được sử dụng trên hệ thống .
Câu hỏi đặt ra là, các công thức nhị phân C++ có tương thích với các bản ghi biến thể Ada không? Nói cách khác, nếu tôi vượt qua một liên minh C + + để mã Ada nó sẽ có thể đọc nó như là một bản ghi biến thể? (Và ngược lại)
Tôi nghĩ rằng điều này là có thể một số điều chỉnh sẽ là cần thiết ... (Eg .: C++ đoàn không chứa một thành viên trong đó mô tả nội dung của nó trong khi bản ghi Ada biến làm)
Bạn có thể sẽ cần phải xác định nền tảng, trình biên dịch, vv –
Cảm ơn, chỉ cần thêm thông tin về môi trường của chúng tôi. – Guarita