lo0 发表于 2008-8-25 21:13:49

编译不通过

D:\ACE_wrappers\ace\INET_Addr.h:133: error: candidates are: int
ACE_INET_Addr::set(short unsigned int, const char*, int, int)
D:\ACE_wrappers\ace\INET_Addr.h:147: error:               int
ACE_INET_Addr::set(short unsigned int, unsigned int, int, int)
D:\ACE_wrappers\ace\INET_Addr.h:153: error:               int
ACE_INET_Addr::set(const char*, const char*, const char*) <near match>
D:\ACE_wrappers\ace\INET_Addr.h:162: error:               int
ACE_INET_Addr::set(const char*, unsigned int, const char*) <near match>
D:\ACE_wrappers\ace\INET_Addr.h:171: error:               int
ACE_INET_Addr::set(const char*, int) <near match>
D:\ACE_wrappers\ace\INET_Addr.h:175: error:               int
ACE_INET_Addr::set(const sockaddr_in*, int) <near match>
D:\ACE_wrappers\ace\INET_Addr.inl:152: error:               int
ACE_INET_Addr::set(short unsigned int, const wchar_t*, int, int)
D:\ACE_wrappers\ace\INET_Addr.inl:163: error:               int
ACE_INET_Addr::set(const wchar_t*, const wchar_t*, const wchar_t*) <near
match>
D:\ACE_wrappers\ace\INET_Addr.inl:173: error:               int
ACE_INET_Addr::set(const wchar_t*, unsigned int, const wchar_t*) <near
match>
D:\ACE_wrappers\ace\INET_Addr.inl:181: error:               int
ACE_INET_Addr::set(const wchar_t*, int) <near match>

代码编译后出现这样的错误,其他几个cpp文件也是这样的错误,请问是怎么一回事呢?

winston 发表于 2008-8-26 09:45:27

没有上下文信息,猜不出。什么环境?

wishel 发表于 2008-8-26 22:03:56

ACE_INET_Addr::set()参数重载问题。
楼主可能直接或间接调用了ACE_INET_Addr::set(),但参数型别不够精确,因此需要一次隐式转换,但转换结果模棱两可(有多种同等优先级的匹配,编译器不能确定哪个最好)。

lo0 发表于 2008-8-27 12:03:39

回复 #3 wishel 的帖子

谢谢,好像是这么个问题。
页: [1]
查看完整版本: 编译不通过