본문 바로가기

프로그램언어/C++

[ C++ ] tinyXML 에 관련된 고찰 XML 라이브러리중에 널리 사용되고 있는 tinyXML에 대해서 공부한 내용을 정리 해보려고 합니다. 피플Inside tv 시청중 이런 말이 생각이 나네요. 동물적인 삶을 이어가라. 내용을 풀이 해주는 과정을 들으니, 공감이 가는 내용이 이기에 소개하려고 합니다. 동물은 먹이감 또는 식사(?)시 하나에만 집중 한다는 이야기 공부도 비슷한 원리가 아닐까 하는 생각이 들었습니다. 산만하게 일처리하는 것보다는 목표를 삶고 있는 내용에 집중할 수 있도록 내 자신에 대해 담금질을 해야 하지 않을까 라는 생각이 들었습니다. 다시 원문으로 돌아와서 openfire에 사용하고 있는 XMPP을 공부하고 구현하여 사용하던 도중에 이런생각이 들었습니다. 아 XML이 좋긴 한데 사용법에 대해 좀더 구체적으로 공부하면 좋겠다라.. 더보기
[ 단위테스트 ] google test 프로그램 1. Intro 많은 프로그래머라면 사용해보셨을 단위 테스트 프로그램입니다. 과연 내가 만든 프로그램들이 동작 유무에 자신을 하는 경우가 많습니다. 하지만 뜻하지 않는 오류는 어디에 든지 발생할 수 있습니다. 테스트 프로그램을 생활화하자!! 아무리 간단한 내용일지라도 확인하고 넘어가는 습관을 들여야 합니다. 손으로 또는 머리로 동작 유무를 생각한 후, 실제로 동작안하는 경우가 발생할 수 있습니다. 제가 사용해왔던 cppunit을 사용해왔습니다. 지금까지는 물론 잘 사용해왔습니다. 하지만 새로운 프로젝트를 수행하기 위해 좀더 편리한 기능을 가진 googletest을 이번에 사용하기로 마음먹고 간략하게 이용해보려 합니다. 2. 설치 * 링크 : http://www.moltak.net/entry/googlet.. 더보기
[C++ ] 스마트 포인터 사용 바디 #include #include int main() { std::auto_ptr aa( new int ); return 0; } 이걸 기초로 만드세요..질의는 이제 그만! 더보기
bit field( 비트 필드) 을 이용한 간단한 예. 비트 필드를 이용한 예를 사용하여 예제를 작성하기로 하였습니다. 어떠한 데이터 조합을 이용하여 옵션값 또는 제약사항을 제어할때 유용하게 사용할 수 있습니다. 제약조건 또는 옵션체크등 다양한 방면에서 사용할 수 있습니다. enum { OPTION1 = 1, OPTION2, OPTION3, . . . } 1. 사용금지 2. 버리기 금지 3. 삭제 금지 4. .... 어떠한 아이템에 각각의 제어를 사용할때 또는 조합을 이용하여 제어할때 사용할 때 유용합니다. 1, 사용금지 + 3. 삭제 금지 2. 버리기 금지 + 3. 삭제 금지 1. 사용금지 + 2. 버리기 금지 조합에 따른 제어도 가능합니다. #include class BitTestRun { public: BitTestRun() : value( 0 ) { .. 더보기
눈속임 반올림 처리. 기본적으로 프로그램을 응용하다 보면 가끔씩은 악이 아니던 그러던 눈속임을 사용하는 경우가 많습니다. 항상은 아니지만 필요에 의해 많이 사용하는 방법이 아닐까 합니다. 보통 서비스하고 있는 시스템에 유저 수를 뻥티기 하는 경우에 사용이 많이 되는데요. 요일별 / 주말별 / 특정 요일에 대해서 사용이 될 수 있겠습니다. 첫 번째 주제는 뻥티기라 정의하고 어떻게 뻥티기를 사용하는지에 대해서 논의하겠습니다. 먼저 계획을 수립하겠죠. 첫 번째 계획. 자 여러분 필요에 의해 서비스하고 있는 것을 조금 부풀려 이야기를 해볼까 합니다. 일단 주중과 주말 모두 뻥티기를 할껀데 주말에는 조금 많게 2배정도 뻥티기 하고 평일에는 조금만 합시다. 두 번째 계획. 자 여러분 저는 요일별 뻥티기를 사용하고 싶습니다. 월/화/수/.. 더보기
man epoll ( I/O event notification facility ) Name epoll - I/O event notification facility Synopsis #include Description epoll is a variant of poll(2) that can be used either as Edge or Level Triggered interface and scales well to large numbers of watched fds. Three system calls are provided to set up and control an epoll set: epoll_create(2), epoll_ctl(2), epoll_wait(2). An epoll set is connected to a file descriptor created by epoll_creat.. 더보기
ListBox Control 정보 넣기. 먼저 listbox을 만들어 놓고 변수를 추가 합니다. CString str; str.Format(_T("%d"), int형_숫자); m_listbox변수.AddString( str ); m_listbox변수.ResetContent(); // 만약에 지금 listbox내용을 지우고 싶을 때 사용. 더보기
CString ->int -> CString 아 바보짓했다..ㅠ_ㅠ 실수해서 왜 안되 안되 안되!! 이상하네 한참 고민했는데 문법을 잘못쓰는 바람에..ㅠ_ㅠ CString → int int형 = _ttoi(CString형); int → CString CString형.Format( _T("%d"), int형); 더보기