GetAddress编译有问题

WEIJIANTAN 2010-09-29 08:44:55
代码如下

DWORD A;
CIPAddressCtrl T;
T.GetAddress(&A);

编译时有如下错误
1>c:\getlocalip\getlocalipdlg.cpp(179) : error C2664: “int CIPAddressCtrl::GetAddress(DWORD &)”: 不能将参数 1 从“DWORD *”转换为“DWORD &”

在MFC中定义明明的是GetAddress(DWORD &),形参是地址变量或指针,为什么编译不通过呢

而把调用改为
T.GetAddress(A)
后编译能通过了,但程序运行就出错了,为什么传入的形参变量而不是指针或地址的时候反而通过呢

是否调用函数此函数前还要做什么初始化或调用其它函数
...全文
235 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
zxfishhack 2010-09-30
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 zxfishhack 的回复:]
引用 1 楼 visualeleven 的回复:
囧,
int GetAddress(
DWORD& dwAddress // 是DWORD&,不是 DWORD*,or LPDWORD ...
);

这里是引用?不是指针OK??

同意,程序出错查一下GetAddress这个方法的实现是否有问题。
[/Quote]
看错了,以为是LZ自己实现的库,MFC的IPAddressCtrl类一般在资源管理器上通过“添加变量”来添加控件变量,然后通过控件变量来调用具体方法。
zxfishhack 2010-09-30
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 visualeleven 的回复:]
囧,
int GetAddress(
DWORD& dwAddress // 是DWORD&,不是 DWORD*,or LPDWORD ...
);

这里是引用?不是指针OK??
[/Quote]
同意,程序出错查一下GetAddress这个方法的实现是否有问题。
Eleven 2010-09-29
  • 打赏
  • 举报
回复
囧,
int GetAddress(
DWORD& dwAddress // 是DWORD&,不是 DWORD*,or LPDWORD ...
);

这里是引用?不是指针OK??

18,357

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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