Các hệ thống trình cắm trong C++ rất khó vì ABI không được xác định đúng và mỗi trình biên dịch (hoặc phiên bản của nó) tuân theo các quy tắc riêng của nó. Tuy nhiên, COM trên Windows cho thấy rằng nó có thể tạo ra một hệ thống plug-in tối thiểu cho phép các lập trình viên với các trình biên dịch khác nhau tạo ra các trình cắm thêm cho một ứng dụng máy chủ lưu trữ bằng cách sử dụng một giao diện đơn giản.Có gì an toàn cho hệ thống plug-in C++?
Hãy thực tế và để nguyên tiêu chuẩn C++, điều này không hữu ích trong khía cạnh này, ngoài một phút. Nếu tôi muốn viết một ứng dụng cho Windows và Mac (và tùy chọn Linux) hỗ trợ các trình cắm thêm C++ và nếu tôi muốn cung cấp cho các tác giả trình cắm thêm một lựa chọn hợp lý các trình biên dịch (nói các phiên bản cũ hơn 2 năm của Visual C++ , GCC hoặc trình biên dịch C++ của Intel), tôi có thể dựa vào tính năng nào của C++?
Tất nhiên, tôi giả định rằng các trình cắm thêm sẽ được viết cho một nền tảng cụ thể.
Off đỉnh đầu của tôi, đây là một số C++ tính năng mà tôi có thể nghĩ đến, với những gì tôi nghĩ là câu trả lời:
- vtable bố trí, sử dụng đối tượng thông qua các lớp trừu tượng? (có)
- loại có sẵn, con trỏ? (có)
- cấu trúc, công đoàn? (có)
- ngoại lệ? (no)
- chức năng "C" bên ngoài? (có)
- chức năng "C" không ngoại lệ với các loại tham số được cài sẵn? (có)
- các chức năng "C" không có ngoại lệ với các loại thông số do người dùng xác định? (không)
Tôi sẽ đánh giá cao bất kỳ trải nghiệm nào bạn có trong khu vực mà bạn có thể chia sẻ. Nếu bạn biết về bất kỳ ứng dụng thành công nào có hệ thống plug-in C++ thì điều đó cũng rất tuyệt.
Journal Carl
Câu trả lời này sẽ tốt hơn nếu bạn tạo liên kết "Ở đây" mô tả chi tiết hơn một chút. Ngay bây giờ, bạn không thể nói với những gì bạn đang liên kết. –
Cảm ơn lời khuyên!Điểm lấy – Serge