线程添加TNMUDP问题

shuqian526 2010-10-28 10:02:55
Background_Process.h中
class Background_Process : public TThread
{
private:
public:
TNMUDP *UDP1;
}

cpp中
__fastcall Background_Process::Background_Process(bool CreateSuspended)
: TThread(CreateSuspended)
{
UDP1= new TNMDUP(this);//无法通过
}


[C++ Error] Background_Process.cpp(40): E2303 Type name expected
[C++ Error] Background_Process.cpp(40): E2034 Cannot convert 'int *' to 'TNMUDP *'
[C++ Error] Background_Process.cpp(40): E2379 Statement missing ;

这是为啥,我看delphi中,,UDP1 := TNMDUP.Create(Self); 就能过?!!百思不得其解
...全文
78 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
shuqian526 2010-10-28
  • 打赏
  • 举报
回复
class Background_Process : public TThread
{
private:

TNMUDP *UDP1;
void __fastcall MyUDPDataReceived(TComponent *Sender,int NumberBytes, AnsiString FromIP, int Port);
}

.cpp
__fastcall Background_Process::Background_Process(bool CreateSuspended)
: TThread(CreateSuspended)
{
UDP1= new TNMUDP(NULL);
UDP1->LocalPort = 6004;
UDP1->OnDataReceived = MyUDPDataReceived;
}

///
void __fastcall Background_Process::MyUDPDataReceived(TComponent *Sender,int NumberBytes, AnsiString FromIP, int Port)
{
///your code
}
shuqian526 2010-10-28
  • 打赏
  • 举报
回复
继续调试,,成功会,我把代码贴出来,
shuqian526 2010-10-28
  • 打赏
  • 举报
回复
。。。。咕~~(╯﹏╰)b,,拷贝糊涂了,另指针为空
UDP1= new TNMDUDP(NULL);
周药师 2010-10-28
  • 打赏
  • 举报
回复
TNMUDP *UDP1;

UDP1= new TNMDUP(this);//无法通过
见红色部分 是你输入错误 应该是TNMUDP(this)

1,317

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 网络及通讯开发
社区管理员
  • 网络及通讯开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧