Làm cách nào để gọi hàm C++ (không có lớp nào liên quan) từ tệp Swift? Tôi cố gắng này:Gọi hàm C++ từ Swift
Trong someCFunction.c:
void someCFunction() {
printf("Inside the C function\n");
}
void aWrapper() {
someCplusplusFunction();
}
Trong someCpluplusfunction.cpp:
void someCplusplusFunction() {
printf("Inside the C++ function");
}
Trong main.swift:
someCFunction();
aWrapper();
Trong Bridging-Header.h:
#import "someCFunction.h"
#import "someCplusplusFunction.h"
tôi thấy this answer rất nhiều thông tin, nhưng tôi vẫn không thể làm cho nó làm việc. Bạn có thể chỉ cho tôi đúng hướng không?
Cảm ơn!
Cảm ơn bạn! Nó hoạt động hoàn hảo cho ví dụ này. Xcode vẫn không muốn liên kết dự án thực, nhưng tôi sẽ tiếp tục điều tra. – popisar
Tôi đã tìm thấy sự cố với dự án thực: Tôi đang cố chuyển một chuỗi làm đối số cho hàm C++. Theo những gì tôi đọc, một chuỗi Swift ** ** sẽ được tự động đúc thành một C ** const char \ ***, nhưng tôi cho rằng tôi đang thiếu một cái gì đó ... – popisar
Nếu chỉ tôi mã hóa những gì tôi giảng .. Trong mã của tôi, tôi trộn lên ** const char \ *** và ** char \ ***. Để tiếp tục: @MaddTheSame đã đưa ra câu trả lời hay. Không có gì để thêm, nhưng một lời cảm ơn :-) – popisar