2014-12-14 2 views
0

각 노드에 소켓 연결이 포함되어있는 링크 된 목록을 만들려고합니다. 내 문제는 소켓 연결을 저장하는 데 사용할 수있는 데이터 형식을 찾는 것입니다. 목록에 모든 데이터 형식을 저장할 수 있으므로이 문제는 파이썬에서는 발생하지 않았습니다.목록에 소켓을 저장하는 방법 C++

파이썬에서 나는 단순히 같은 것을 할 수있는 :에

Class Node  
{  
public:  
    string username;  
    DATA TYPE socketConn;  
} 

그래서 내 질문은 : 나는 C++에서 연결된 목록을 만들 수 있었다면

clientSocket, clientAddress = socket.accept() 
LIST[] 
LIST.append(clientSocket) 

는, 각 노드처럼 보일 수를 socketConn을 소켓 연결과 같게 설정하려면 어떤 데이터 형식을 사용해야하며이 방법이 불가능하면 어떻게 다른 방식으로 간단한 방법으로 구현할 수 있습니까?

만약 내가 완전히 명확하지 않다면 죄송합니다.

+0

'std :: list '우리가 준 코드에 대해서는 작동해야합니다. – Nox

+0

파이썬 샘플 코드가 유효한 파이썬이 아닙니다. ** 또한 링크 된 목록 **을 사용하고 싶지는 않습니다. 대신에'std :: vector'를 사용하십시오. 소켓의 데이터 타입은'int'입니다 (특별한 네트워킹 라이브러리를 사용할 때를 제외하고). – dom0

+2

소켓은 C/C++에서 단순한'int's입니다. –

답변

1

ST-Library의 std :: list (또는 std :: vector와 같은 다른 컨테이너)를 사용하기 만하면됩니다. 예컨대 :

  • std::vector<Node>/std::list<Node> 또는
  • std::vector<std::unique_ptr<Node>>
  • .
관련 문제