Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Visual C++/MFC/WTL > VS не видит std


Автор: vood 7.4.2009, 16:19
Проблема такова: простенькая программа на VS2005 не видит пространство имен std.  Precompiled Headers отключил. 
Код

#include <stdio.h>
#include "winsock.h"

using namespace std;

int main(int argc, char* argv[])
{
SOCKET s= socket(AF_INET, SOCK_STREAM, 0); 
struct sockaddr_in sin;
memset ((char *)&sin, '\0', sizeof(sin)); 
sin.sin_family = AF_INET; 
sin.sin_addr.s_addr = INADDR_ANY; 
sin.sin_port = 1234; 
bind(s, (struct sockaddr *)&sin, sizeof(sin)); 
return 0;

}



Если кто-нибудь сталкивался, помогите .

Автор: Cheloveck 7.4.2009, 18:20
Как понять не видит? Логи в студию.

Автор: vood 7.4.2009, 18:22
1>d:\sock1.cpp(7) : error C2871: 'std' : a namespace with this name does not exist

Автор: Cheloveck 7.4.2009, 18:28
во-первых, у тебя тут нет std, во-вторых, читай MSDN, где написано, что bind объявлена в Ws2_32.dll. подключай Ws2_32.lib и убирай свой using

Код

#pragma comment (lib, "Ws2_32.lib")

Автор: vood 7.4.2009, 18:31
понял, спасибо

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)