본문 바로가기

프로그래밍

Python 기본 제어문 Python 기본 제어문 if 문 if : 구문1 elif : 구문2 else: 구문3 while문 while : 구문 for문 for in : 구문 for문이 조금 특이한데 보통 100번 반복하기 위해서는rage() 함수를 이용하여 for문을 돌릴 수 있다. l = range(100)for i in l: print(i) 참고적을호 Python에는 switch 문이 없다!! 더보기
Python 개발 환경 python은 1991년 프로그래머인 귀도 반 로섬(Guido van Rossum) 이 발표한 고급 프로그래밍 언어로, 플랫폼 독립적이며 인터프리터식, 객체지향적, 동적 타이핑(dynamically typed) 대화형 언어이다. 파이썬이라는 이름은 귀도가 좋아하는 코미디 〈Monty Python's Flying Circus〉에서 따온 것이다.(위키피디아) python을 사용하는 이유는 배우기 편하고.. 다양한 플랫폼에서 구동되고.. 변수 타입 고민 안해도 되고.. 등등 있지만 가장 큰이유는 매우매우 다양한 패키지가 존재하기 때문이 아닐까? 그럼 python 개발을 위한 환경은 무었일까? 가장 간단한 것은 Python을 설치하면 기본적으로 딸려(?)오는 IDLE을 사용하는 것이 아닐까싶다. 친숙한 통합개발.. 더보기
keyedobjectpool keyedobjectpool 이놈이 뭔가... 지네릭으로 풀을 구현해주는 클래스/인터페이스 인것 같은데.. 일단 풀의 디폴트 갯수가 8개인것 같아 대량 접속시에는 문제가 있을듯하고... 만약 풀에 object가 없을 경우 블락이 되는지 아니면 에러를 던져주는지... 이런것들을 좀 생각해 봐야겠다. 참고자료.. http://commons.apache.org/pool/api-1.2/org/apache/commons/pool/impl/GenericKeyedObjectPoolFactory.html http://commons.apache.org/pool/api-1.2/org/apache/commons/pool/impl/GenericKeyedObjectPool.html 더보기
Dll Import 할때 lnk2001 에러 났을때 대처 #ifdef __cplusplus extern "C" { #endif #include "zlib.h" #ifdef __cplusplus } #endif //뭔지는 잘모르것다..이러니깐.. Linking... TestZLIBDlg.obj : error LNK2001: unresolved external symbol _deflateEnd TestZLIBDlg.obj : error LNK2001: unresolved external symbol _deflate TestZLIBDlg.obj : error LNK2001: unresolved external symbol _deflateInit_ Debug/TestZLIB.exe : fatal error LNK1120: 3 unresolved externals Er.. 더보기
[MFC] Thread 에서 UpdateData() 사용 시 에러 관련사항 Thread 사용시 UpdateData(false); 는 실행 중에 Debug Assertion Failed라는 에러는 발생시킨다. 예를 들면, MyThread( CMyDlg *p ) { p->UpdateData(BOOL); } 위와 같은 방법은 않된다. 가능한 방법1. GetDlgItem()->SetWindowText(CString); 방법을 사용해서 특정 아이템만 업데이트를 하는 것이다. 이때, SetWindowText()의 인자 값으로는 CString만 온다는 것에 주의. 예제. int cnt = 100; CString num; num.Format("%d",cnt); Pointers->GetDlgItem(IDC_STATIC_RESULT)->SetWindowText(num); 그러나 콘트롤 하나 하나.. 더보기
[Visual Studio] class view에 클래스 정보 사라질때!! MS Visual Studio를 사용하다보면 갑자기 어느 순간 부터 왼쪽 옆에 있는 ClassView에 클래스 정보가 아무것도 나오지 않거나, 또는, ClassWizard를 실행시켰을 때 아무것도 나오지 않아 당황한 적이 있을 겁니다... 이럴 경우, MSDN을 뒤져서 알아낸 대처 방안은 다음과 같습니다.. 일단, 위의 어느 두 경우든지 먼저 file들을 backup을 해 놓고 다음을 시도해봅니다. 1. 왼쪽 옆에 있는 WorkSpace의 ClassView에 클래스 정보가 나오지 않는다... 먼저, MS Visual Studio를 빠져 나옵니다. 그 후, 일단 folder 전체를 다른 이름으로 backup을 받아 놓은 후, 그 folder안에 있는 .ncb 라는 파일을 지워버립니다. 그리고, 다시 .ds.. 더보기
루비... 난 웹 프로그래밍이 매우 간단하다고 생각했다... 뭐... 끽해야 게시판 만들고.. 화면 꾸미는게 다일것이라는... 그런걸 위해서 노가다를 해야하는.. 거시기한 웹프로그래머는 참..불쌍하다고.. 루비... 이전부터 들어와서 관심은 있었지만.. 귀차니즘으로 인해 검색한번 안해봤다. 15분만에 블로그만드는 동영상도 봤다..ㅋㅋ 역시.. 이런게 나올줄 알았다.. 간단히 책사서 연구해봐야지...그래도나는 여전히 시스템 프로그래밍이 더 있어보인다.. ~ ^^ 더보기
리스트 컨트롤 체크박스 관리하기 //선택 삭제하기 int nCount=m_ctrIPList.GetItemCount(); for(int i = nCount-1 ;i>=0;i--) { BOOL a= m_ctrIPList.GetCheck(i); if(a==TRUE) { CString tmp = m_ctrIPList.GetItemText(i,0); tmp.Format("%s 를 정막 삭제 하시겠습니까?",tmp); if(AfxMessageBox(tmp,MB_OKCANCEL)==IDOK) { m_ctrIPList.DeleteItem(i); } } } //셀렉트 All 구현 int nCount=m_ctrIPList.GetItemCount(); for(int i = 0 ;i 더보기
AfxBeginThread 사용하기 이렇게 한번 해 보세여... 저는 스레드를 사용할때 스레드 함수를 전역으로 놓구 합니다... 책에두 다 그렇게 나와 있던데여... ^^ cpp파일 맨위에 보면 헤더파일들 인클루드 하는 부분이 있죠?? 그아래에 함수 선언을 합니다... 그러면 전역함수로 사용할 수 있습니다... UINT threadfunction(LPVOID pParam); 이렇게 함수 선언을 해주고여... 사용하시면 됩니다.. 함수는 아래 처럼 해서여... void Cexercise2Dlg::OnBnClickedButton1() { AfxBeginThread(threadfunction,this); } UINT threadfunction(LPVOID pParam) { Cexercise2Dlg* pDlg = (Cexercise2Dlg *) .. 더보기
CIPAddressCtrl 아주 쉬운 CIPAddressCtrl이라는 클래스에 대해서 알아 보도록 하겠습니다. IP Address 라 ;; 시스템에 관한 ip를 가져오는 클래스인가 호오 이거 정말 나중에 소켓 프로그램 사용할때 무지 편하겠는데 ~~ ^^ ;; 하지만 우리에 상상 이니 ㅜ_ㅜ;;; 저것은 사용자가 입력 받는 형식이 IP 형식으로 입력 받을수 있도록 한 Edit 비슷한 것이라고 보시면 됩니다. !! Edit IPAddress ========== ====================== | | | . . . | ========== ====================== 이런 모양 일꺼라고 보여 집니다. IP입력 받을시 좀더 간편하게 입력 받기 위함을 알수 있습니다. 그럼 어떻게 사용할까요??? 무지 간단한 컨트룰중 하.. 더보기