所以我有一个定义如下的类:
class Socket {
public:
Socket();
virtual ~Socket();
int open();
void close();
private:
int mHandle;
int mState;
};
然后我像这样实现close()方法:
void Socket::close()
{
if (mHandle!=0)
close(mHandle);
}
我的close内的“ close(mHandle)”是在AFAIK中定义的一个,它不在任何名称空间内。
要解决此问题,我将自己重命名为其他名称,但是必须采用其他方法...
一旦找到至少一个功能,名称查找就会结束。您可以限定名称,以便在正确的位置开始查找:
::close( mHandle );
或在本地声明名称,以便查找绕过类成员:
using ::close;
close( mHandle );
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句