วิธีการแปลงอาร์เรย์ numpy เป็น vector <int> & (อ้างอิง) ด้วย SWIG
เป้าหมายของฉัน: สร้าง 3 numpy arrays ใน python (2 อันจะถูกเตรียมค่าเริ่มต้นด้วยค่าเฉพาะ) จากนั้นส่งทั้งสามตัวผ่าน swig ไปยังฟังก์ชัน c ++ เป็นเวกเตอร์ อ้างอิง (นี่คือเพื่อหลีกเลี่ยงการคัดลอกข้อมูลและประสิทธิภาพการสูญเสีย) เมื่ออยู่ในฟังก์ชัน c ++ ให้เพิ่ม 2 อาร์เรย์และใส่ผลรวมลงในอาร์เรย์ที่ 3 vec_ref.h #include <vector> #include <iostream> void add_vec_ref(std::vector<int>& dst, std::vector<int>& src1, std::vector<int>& src2); vec_ref.cpp #include "vec_ref.h" #include <cstring> // need for size_t #include <cassert> void add_vec_ref(std::vector<int>& dst, …