Инициализируйте управляемый массив потока - PullRequest
1 голос
/ 17 марта 2011

У меня есть успех, чтобы скомпилировать следующий код, но я должен сделать из него массив потоков.

Form1^ form1obj = gcnew Form1();
Thread^ bfcaller = gcnew Thread(
gcnew ThreadStart(  form1obj, &Form1::bruteforce  ));
bfcaller->Start();

Я получил ошибки, сделав массив следующим образом:

array<Form1^>^ form1obj = gcnew array<Form1^>(25);
array<Thread^>^ bfcaller = gcnew array<Thread^>[25];

for (int counter = 0; counter < 25; counter++)
{
    bfcaller[counter] = gcnew Thread( gcnew ThreadStart(form1obj, &Form1::bruteforce));
}

Где я сделал это неправильно?Спасибо за помощь.

1 Ответ

2 голосов
/ 17 марта 2011

Несколько синтаксических ошибок в вашем коде.

   gcnew array<Thread^>[25];

Не используйте квадратные скобки, используйте (25)

   gcnew ThreadStart(form1obj, &Form1::bruteforce)

Первый аргумент неверен, он должен быть ссылкой на экземпляр Form1, а не массивом форм, поскольку bruteforce () является методом Form1. Может быть, вы имели в виду form1obj [counter].

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...