Tôi có một số mã C++:Làm cách nào để bọc giao diện C++ (lớp trừu tượng) trong C++/CLI?
namespace Compute {
class __declspec(dllexport) IProgressCB {
public:
virtual void progress(int percentCompleted) = 0;
};
double __declspec(dllexport) compute(IProgressCB *progressCB, ...);
}
mà tôi cần phải gọi từ C#.
Vì vậy, tôi muốn bọc mã C++ này trong C++/CLI.
Tôi hiểu cách quấn hàm tính toán(), nhưng làm cách nào để bọc giao diện IProgress?
(Có vẻ như nó không phải là có thể cho một lớp Net kế thừa một ++ lớp C?)
BTW. Bạn có biết làm thế nào tôi có thể "tự động hóa" việc xây dựng các Sink và mã Forwarder? – Andy
@Andreas: "xây dựng mã" không rõ ràng lắm. Bạn có nghĩa là "tạo mã" hoặc "xây dựng đối tượng" không? –
Xin lỗi. Tôi có nghĩa là tạo mã. Tôi hiểu rằng SWIG tạo mã PInvoke thay vì C++/CLI, nhưng một cái gì đó như thế, có lẽ trọng lượng nhẹ hơn sẽ là lý tưởng. – Andy