m_nPacketBufferMark = 0;
m_socket.async_connect(endpoint,
boost::bind(&ChatClient::handle_connect, this,
boost::asio::placeholders::error)
);
여기 boost::bind를 std::bind로 바꾸고 싶은데
걍 바꾸면 에러가 나더라구여...
클래스의 메소드를 bind하는 방법이 뭐가 있을까여...
m_nPacketBufferMark = 0;
m_socket.async_connect(endpoint,
boost::bind(&ChatClient::handle_connect, this,
boost::asio::placeholders::error)
);
여기 boost::bind를 std::bind로 바꾸고 싶은데
걍 바꾸면 에러가 나더라구여...
클래스의 메소드를 bind하는 방법이 뭐가 있을까여...
왜 std::bind 로 바꿀려구?
비슷한 타입이라도 타입이 다르면 연계가 구릴텐데?
저 bind가 표준됬으니 표준 쓰는게 나을 거 같아서여
단순히 니가 boost::bind 를 써도 클래스의 메소드가 핸들러로 등록이 안될땐, const 같은거 사소하게 타입을 잘못 주지 않았는지 확인.
boost로는 잘 되여
std 가 표준이니까 잘될거라는건 무슨 근거임 ㅋㅋ 표준 버전이 여러갠데.
boost 를 쓰면 하위 컴파일러에서도 돈다는게 장점.
std가 표준이라 잘 될거라는게 아니라
표준이니까 되도록 표준으로 만들고 싶어서여..
쓸데없는 집 to the 착~ 표준의 장점을 역행하는게 파편화된 표준임.
해당 SDK 에선 해당 SDK 의 표준적인 방법이 있는거임. asio 도 그냥 asio 랑 boost::asio 가 사실상 버전이 다르고.
boost 를 쓸거면 boost 안에 있는 타입을 쓰는게 표준이란거임. 그래야 boost 버전이 바껴도 preprocessor directives 로 처리해 주든지 하는거지.
그러쿤영... 지금 boost::asio 쓰니깐 boost로 맞춰도 나쁘진 않을 것 같네여...
아니 그 편이 더 나을 거 같네여..
t감사합니당..
/ㅁ/