VS2015編譯錯誤:
errorCxxxx: 'initializing' : cannot convert from 'std::_Bind<false,void,SOCKET&,sockaddr *,unsigned int>' to 'int'
現象:Socket編程中bind()函數出錯
原因:c++ 11 ,在命名空間std中實現了bind函數,與socket編程里的bind函數沖突。
解決方法:
去掉本文件的命名空間usingnamespace std;(如果還出錯的話,一定是因為該文件包含的頭文件,還存在std。)
注意:如果注釋掉“usingnamespace std;”后報了更多錯,請不要注釋usingnamespace std;
而將bind()函數換成 ::bind();一直使用 ::bind(),::的用法是直接訪問全局,也是系統調用