Я пытаюсь преобразовать код C
в C++
. В моем .c файле Я определения, как это:Явный тип литья в C++
void services(void);
void transfers(void);
Более того, поток инициализирует выше двух, как это:
_beginthread((void*) services,0,NULL);
_beginthread((void*) transfers,0,NULL);
Когда я пытаюсь скомпилировать, я получил следующее сообщение об ошибке в обоих указанных выше, как это места:
Conversion from void* to pointer to non-void required an Explicit cast: Cannot convert parameter 1 from void* to void(_cdecl*)(void*)
Я запутался об этом, надеюсь, что вы, ребята, сделать его более понятным для меня :-)
Вы можете просто использовать ссылку 'extern 'C" 'и оставить свой код C – mvp
В соответствии с документацией' _beginthread' в MSDN параметр для подпрограммы потока является 'void *' не 'void'. Возможно, С больше прощает об этом. – lurker
Что такое подпись для функции _beginthread? –