私は ac# を持っていますが、コードがあり、cli/c++ でそれが必要ですが、常にこのエラーが発生します
「エラー 2 エラー C2955: 'BaseLibCS::MethodInvoker': クラス ジェネリックを使用するには、ジェネリック引数リストが必要です」
「エラー 4 エラー C2664: 'BaseLibCS::MethodInvoker::MethodInvoker(System::String ^,...cli::array ^)': パラメーター 1 を 'GetNotifications ^const ' から 'System::String ^' に変換できません"
「エラー 3 エラー C2102: '&' には左辺値が必要です」
「エラー 1 エラー C2872: 'MethodInvoker': あいまいなシンボル」
これは私のC#コードです:
private void HandleFarmStateChanged(object sender, ValueChangedEventArgs<CFarm.FarmState> e)
{
if (control.InvokeRequired)
{
control.Invoke(new MethodInvoker(delegate
{
HandleFarmStateChanged(sender, e);
}));
return;
}
//FarmStateStatusLabel.Text = e.NewValue.ToString();
Console.WriteLine(e.NewValue.ToString());
Console.WriteLine(" ");
}
これは私のC ++コードです:
void GetNotifications::HandleFarmStateChanged(Object ^sender, ValueChangedEventArgs<CFarm::FarmState> ^e)
{
if (control->InvokeRequired)
{
control->Invoke(gcnew MethodInvoker(this,&GetNotifications::HandleFarmStateChanged(sender, e)));
//}));
return;
}
Console::WriteLine(e->NewValue.ToString());
Console::WriteLine(" ");
}