נבצרתי מלהבין...
אז ככה חברה: יש לי מחלקה בשם:
אז ככה חברה: יש לי מחלקה בשם:
CCommandParser
ומוגדרת בה פונקציה ציבורית:DWORD WINAPI StartParsing(LPVOID lpParameter);
בקובץ המימוש היא מופיעה כך:DWORD WINAPI CCommandParser::StartParsing(LPVOID lpParameter){...}
יש לי פונקציה int main שבונה משתנה מהמחלקה הזו ויוצרת Thread מהפונקציה שהזכרתי קודם. עכשיו, יש משהו פגום בהגדרה? כי השמטה של המילה WINAPI גם מקובץ המימוש או לחילופין מקובץ ההגדרה או ביחד ולחוד וכו' לא עזרה. השגיאה שאני מקבל בקימפול היא C2664, "error C2664: 'CreateThread' : cannot convert parameter 3 from 'DWORD (LPVOID)' to 'LPTHREAD_START_ROUTINE' None of the functions with this name in scope match the target type" והשורה בפונקציית main היא:hh = CreateThread(NULL, NULL, ccmd_parse.StartParsing, NULL, NULL, &WndThreadID);
אני לא מחפש את התקינות בקריאה לשורה כי זה לא קריטי נכון לעכשיו. הקריאה הזו עבדה מצויין עבור פונקצייה שהוגדרה באותו הקובץ של פונקציית main אבל עכשיו זה לא עובד. יש מושג? אני אשמח להצעות. שלכם, מוטי.