Увеличение.Многопоточность - PullRequest
2 голосов
/ 25 января 2011
class accel{
public:
    accel(int threads, string params);

private:
    void getfile(int from, int to);
    void download(int threads);
};


void accel::download(int threads){
    boost::thread g(&getfile(0, 1));  //<<<<
}

выдает ошибку '&' требует l-значение.Я делал это на примере.Как заставить это работать?

Ответы [ 2 ]

6 голосов
/ 25 января 2011
boost::thread g (boost::bind(&accel::getfile, this, 0, 1));
2 голосов
/ 25 января 2011

getfile возвращает void - вы пытаетесь получить адрес переменной типа void.Это не имеет никакого смысла вообще.Вам нужно будет использовать объект связанной функции - проверьте boost :: bind.

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