Если Form1::calculate()
не является статичным, вам нужно указать объект, на котором должна выполняться функция, вероятно, this
в вашем случае. Вы также столкнетесь с проблемами, которые calculate
принимает аргумент - делегат ThreadStart
не имеет параметров.
Есть пример в MSDN документации для ThreadStart
, который, вероятно, стоит посмотреть.
Это пример кода из MSDN для нестатического ThreadStart
делегата:
Work^ w = gcnew Work;
w->Data = 42;
ThreadStart^ threadDelegate = gcnew ThreadStart( w, &Work::DoMoreWork );
Thread^ newThread = gcnew Thread( threadDelegate );
newThread->Start();