Error C3352: 'void ServerClass::ActionMethod(int,int,System::String ^)' :
указанная функция не соответствует типу делегата 'void (void)' D: \ westside \ NetSockets \ win32project \ Win32.cpp 70 1 win32project
Короче говоря, приложение win32 использует библиотеку C #. Когда приложение win32 вызывает метод конструктора в библиотеке C #, появляется ошибка выше. Ниже приведен код. Я не уверен, что мне не хватает.
код приложения win32
заголовочный файл
public ref class ServerClass
{
NetEvents::NetEventArgs^ args;
NetSockets::NetSocket^ server;
public:
void ActionMethod(int iCommand, int iClientIndex, System::String^ message);
void StartServer();
};
исходный файл
void ServerClass::ActionMethod(int iCommand, int iClientIndex, System::String^ message)
{
}
void ServerClass::StartServer()
{
server = gcnew NetSockets::NetSocket(gcnew System::Action(this, &ServerClass::ActionMethod1));
}
код библиотеки C #
namespace NetSockets
{
public class NetSocket
{
Action<int,int,string> actClient;
public NetSocket(Action<int, int, int> action)
{
}
public NetSocket(Action<int, int, string> action)
{
this.actClient = action;
}
}
}