Используйте dllimport для расширенного класса
У меня есть этот код:
С++:
class testfunction { public: virtual double operator()(double) = 0; };
и я хочу использовать этот класс В C#, например
С#
class myCSharpClass: testfunction { }
Как я могу это сделать?
Что я уже пробовал:
extern "C" { class testfunction { public: virtual double operator()(double) = 0; }; }
Philippe Mori
Вы не можете получить производную от неуправляемого класса В C#. Поэтому, если это то, что вы хотите сделать, то вам нужно написать управляемый класс на C++/CLI...
Кроме того, насколько я знаю, C# do не позволяет переопределять оператор () (и я не уверен, что это возможно для управляемых классов C++), поэтому вам, возможно, придется переименовать эту функцию...