LINUX.ORG.RU

История изменений

Исправление Xintrea, (текущая версия) :

Можешь std::placeholders::_1 убрать, все равно будет ошибка.

Я еще поигрался и вот что вижу. Если взять обычную функцию, то она нормально присваивается и все компилится:

int easyGetChar(int Port)
{
   (void)Port;
   return 25;
}

int main (int argc, char *argv[]) 
{
    FileChannel channel;
    TChanApi chanApi;

    chanApi.onCHAN_Getc=easyGetChar;
}


А с std::bind и методом класса такое не прокатывает. А нужно чтоб прокатило.

Вот третий пример, с обычной функцией, компилябельный:

http://rgho.st/7vTzBXlVx

Исправление Xintrea, :

Можешь std::placeholders::_1 убрать, все равно будет ошибка.

Я еще поигрался и вот что вижу. Если взять обычную функцию, то она нормально присваивается и все компилится:

[br][br]int easyGetChar(int Port)[br]{[br]   (void)Port;[br]   return 25;[br]}[br][br]int main (int argc, char *argv[]) [br]{[br]    FileChannel channel;[br]    [br]    TChanApi chanApi;[br]   [br]    chanApi.onCHAN_Getc=easyGetChar;

}

А с std::bind и методом класса такое не прокатывает. А нужно чтоб прокатило.

Вот третий пример, с обычной функцией, компилябельный:

http://rgho.st/7vTzBXlVx

Исходная версия Xintrea, :

Можешь std::placeholders::_1 убрать, все равно будет ошибка.

Я еще поигрался и вот что вижу. Если взять обычную функцию, то она нормально присваивается и все компилится:

int easyGetChar(int Port)
{
(void)Port;
return 25;
}

int main (int argc, char *argv[])
{
FileChannel channel;

TChanApi chanApi;

chanApi.onCHAN_Getc=easyGetChar;
}

А с std::bind и методом класса такое не прокатывает. А нужно чтоб прокатило.

Вот третий пример, с обычной функцией, компилябельный:

http://rgho.st/7vTzBXlVx