블로그 이미지
이태원에서 사는 다섯식구의 무직 가장. 흰둥에미

카테고리

분류 전체보기 (184)
Itaewon (2)
ryu's?? (1)
20121210이전 (20)
20130827이전 (147)
soo'study (13)
Total41,824
Today0
Yesterday3

XML 파싱중에 아래와 같은 문자열 비교 함수를 만들어 썼다.

물론 웹질을 통해 찾았지만..

BOOL IsSameStr(const char* pszStr, const _bstr_t& bstrStr)
{
 return std::string(pszStr) == static_cast<const char*>(_bstr_t(bstrStr));
}

 

문제가 발생해서 봤더니,

함수를 콜하는 데서 _bstr_t형 타입 변수를 하나 가지고 계속 썼는데, GetBSTR()함수를 이용해,

MSXml API의 함수인 get_nodeName에 넘겼었다.

이때 어떤 경우에는 m_Data에 값이 어떤 경우에는 m_wstr로 값이 들어가면서 발생하는 문제.

즉, 비교함수가 제대로 작동 안할 수 있다는 것.

 

'20130827이전 > C&C++' 카테고리의 다른 글

Collada 라이브러리에 대한 짧은 생각  (0) 2013.05.04
XML 파싱중에..  (0) 2013.04.30
디버깅  (0) 2013.04.27
구조체 ( struct )  (1) 2013.02.20
memory 관련 함수들  (0) 2013.02.18
레퍼런스 변수  (0) 2013.02.13
Posted by 흰둥에미

최근에 달린 댓글

최근에 받은 트랙백

글 보관함