Tôi muốn để lộ boost::shared_Ptr
tới lớp Tcl bằng SWIG. nhưng hiện tại tôi không biết tôi có thể phơi bày điều này. Tôi phát hiện ra rằng thư mục SWIG/Lib chứa tệp giao diện cho shared_ptr.i
. Nhưng trong nội dung tôi phát hiện ra rằng tôi không thể sử dụng nó trực tiếp. Nó phải được bao gồm sau "boost_shared_ptr.i
". Nhưng không có gì giống như boost_shared_ptr.i
trong "SWIG/Lib/tcl
" thư mục nhưng chúng tôi có giao diện tương tự mà tôi có thể bao gồm trong Java.Làm cách nào để hiển thị Boost :: shared_ptr <T> vào tệp giao diện Tcl + SWIG?
Trả lời
Bạn không thể sử dụng shared_ptr chuẩn? Ý tôi là std :: tr1 :: shared_ptr? Trong gcc, bạn cần phải
#include <tr1/memory>
Tôi không thể sử dụng std :: tr1 :: shared_ptr, vì thư viện của tôi sẽ được sử dụng cho cả Java và TCL và tôi đã tiếp xúc với mọi thứ trên Java và dường như nó hoạt động tốt ở đó. –
Microsoft bị lỗi gì với khả năng tương thích C++ 0x. Nó hoạt động trên WIN XP SP2 hoặc sau này, vì vậy nếu bạn thực hiện dự án, sẽ có nhiều người dùng, bạn không thể sử dụng nó. – ST3
Khi tôi thử lần cuối không có hỗ trợ tốt cho tăng/shared_ptr trong tất cả SWIG. Python có mức độ phù hợp tốt nhất. Tôi muốn nghe nếu điều này đã thay đổi.
Theo như kinh nghiệm khác của tôi với SWIG, bạn cũng cần phải tạo mẫu bằng cách sử dụng% template cho từng loại mà bạn muốn hiển thị.
- 1. Làm cách nào để tạo giao diện nền tảng chéo với SWIG?
- 2. Sử dụng boost shared_ptr
- 3. Boost shared_ptr dereference cost
- 4. C++ 0x std :: shared_ptr vs. boost :: shared_ptr
- 5. Không có lỗi giao diện hiển thị
- 6. Làm thế nào để xử lý phát triển C++ std :: namespace? ví dụ: std :: tr1 :: shared_ptr so với std :: shared_ptr so với boost :: shared_ptr vs. boost :: tr1 :: shared_ptr
- 7. Có cách nào tốt để tạo tài liệu cho các giao diện swig không?
- 8. Làm thế nào để sử dụng swig để tạo ra giao diện php cho C++ vậy
- 9. Làm cách nào để thêm một Action <string> vào giao diện?
- 10. boost shared_ptr casting thành void *
- 11. Làm thế nào để giới thiệu boost :: shared_ptr vào một codebase C++ hiện có (lớn)?
- 12. Tôi có nên sử dụng boost :: ptr_vector <T> hoặc vector <boost :: shared_ptr <T>>?
- 13. Downcasting shared_ptr <Base> to shared_ptr <Derived>?
- 14. Cách hiển thị giao diện trong dịch vụ web
- 15. Cách hiển thị std :: vector <int> dưới dạng danh sách Python bằng SWIG?
- 16. Đúc shared_ptr <T> để shared_ptr <void>
- 17. Làm thế nào để không bước vào shared_ptr trong xcode
- 18. Làm cách nào để thuận tiện hiển thị/mở rộng các cấp dưới trong giao diện phác thảo của dock xây dựng giao diện trong Xcode4
- 19. Làm cách nào để biết ai đang giữ shared_ptr <>?
- 20. Trình tạo giao diện: Có cách nào để hiển thị bàn phím ảo không?
- 21. Hiển thị hàng con trong giao diện quản trị Django
- 22. boost :: make_shared <T> (...) không biên dịch, shared_ptr <T> (mới T (...)) hiện
- 23. Làm thế nào để sao chép sâu đối tượng đầy đủ đằng sau tăng :: shared_ptr <T> vào shared_ptr trỏ đến vị trí mới?
- 24. Làm cách nào để hiển thị bộ đệm byte thô bằng Boost :: Python?
- 25. Khởi tạo Boost shared_ptr trong hàm tạo
- 26. Làm cách nào để hiển thị danh sách tra cứu ngược ForeignKey trong giao diện quản trị DJango?
- 27. Cách hiển thị dấu hoa thị trên siêu mô hình trong giao diện người dùng
- 28. Hiển thị bàn phím với UITextField ở giao diện phụ kiện đầu vào
- 29. Hiển thị chế độ xem Giao diện người đóng kín
- 30. Làm cách nào để hiển thị NSAttributedString trên iPhone?
Chúc tôi có thể giúp đỡ, nhưng tôi chưa bao giờ thực hiện C++/Tcl ràng buộc một cách thực sự, và chắc chắn đã không thực hiện nó với SWIG. (Tôi biết một chút về làm thế nào để ràng buộc các loại cơ bản, nhưng 'shared_ptr'? Không có ý tưởng cả. Tôi làm việc nhiều hơn với đồng bằng cũ C ...) –
Bạn không cố gắng để lộ T như một tham số để Tcl, là bạn? – AlexK
Tôi thực sự muốn tạo các chốt để tăng :: shared_ptr trong tcl. –