我有一个正在通过 CreateThread 传递的结构
packetargs *args;
args->s=s;
args->buf=buf;
args->len=len;
args->flags=flags;
args->to=to;
args->tolen=tolen;
CreateThread(NULL,0,mThread,args,0,NULL);
但是当我在我的 Thread 函数中接收到它时,它使应用程序崩溃(因为信息有误):
DWORD WINAPI mThread(LPVOID args)
{
packetargs *pargs = (packetargs *)args;
我应该如何将结构作为指针传递,然后在线程函数中再次创建它?
最佳答案
您忘记为您的结构分配任何内存:
packetargs *args = new packetargs;
(当然,您有时需要删除
它。)
关于c++ - 如何将结构作为指针传递? [C++],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6500199/