string strSrc = "Test string...";
strSrc.compare("Test strinG...") vs _stricmp( strSrc.c_str(), "Test strinG...")
문자열 비교 테스트를 하는데 위 코드가 월등하게 빠를것으로 예상하고 테스트 했는데 아래 코드가 더 빠르다.
아래쪽은 대소문자를 무시하는 비교라 연산이 더 들어가는데 어떻게 더 빠른건가 했더니... Debug 모드이다.
Release 모드에서는 위쪽 코드를 백만번 수행해도 시간측정이 되지 않는다.(예상대로 훨씬 빨랐다.)
STL 코드에 디버그 코드가 상대적으로 많이 포함되어 있는 듯 하다.
추가로 아래의 대소문자를 구분한 코드도 비교해 보았다.
strcmp( strSrc.c_str(), "Test strinG...")
결과는 위 코드는 string의 compare 함수와 크게 차이가 나지 않았다.
보다 나은 성능을 고려할때에는 문자열 비교 할 때 대 소문자를 구분 하거나 미리 대문자든 소문자든 바꾸어 놓은 후 비교를 해야겠다.
'Dev Story > Mess' 카테고리의 다른 글
Visual Studio 2012의 XP 지원 문제 (0) | 2013.05.08 |
---|---|
짜증나는 쿠팡의 스크립트 링크 크롬 확장 해결!! (1) | 2012.10.13 |
짜증나는 쿠팡의 스크립트 링크 크롬 확장으로 대응 (0) | 2012.09.25 |
Lazarus 1.0 x64 저장 문제 (0) | 2012.08.31 |
OpenCV 2.4.2 테스트 (0) | 2012.08.08 |