2010년/5월(15)
-
5월31일 API(비트맵뷰어) RFID(윈도우 단축키!!!
RFID DLL(dynamic linked libray) Proxy win + D + M ->바탕화면) win + E ->탐색기 win + Run ->실행 win + G -> 찾기 win + L ->로그오프 실행창에서 계산기 calc 메모장 notepad 그림판 mspoint 콘솔 cmd 프로그램 추가 삭제 appwiz.cpl 서비스 services.msc 레지스트리 regedit 시작프로그램 msconfig ctrl+alt+del 로 파일에 explorer.exe... 추가하면 바탕화면 아이콘을 볼수있음 Portable Ex ==PE 윈도우 실행파일~
2010.05.31 -
5월28일(비트맵뷰어회전)C++(hexaviewer c++로 변환
P587; ========================================================================= ========================================================================= C++ #include #include #include #include #include #include using namespace std; #define MAX_FILE_SIZE 1400 void HesaView(void *vp,int iSize) { int iCnt; int iHexnum=0; cout.setf(ios::uppercase); //대문자로 출력 if(0==vp) { return; } if(MAX_FILE_SIZE
2010.05.28 -
5월27일 C++(순수가상함수,sort,setf(ios_base::boolalpha,showpos,hex,width)API(비트맵뷰어)
반드시 자식 클래스는 부모클래스의 vitual되어있는 함수를 구현해야한다. 그것이 바로 순수가상함수라는것이다. 보다 시피 itisn에서 virtual void test()함수를 만들고 뒤에 0을 넣었다. 그러면 자식이되는 sca에서 test()함수를 반드시 구현해야한다. 만약에 sca test()함수 자체를 빼거나 주석처리하게 되면 에러가 뜬다. 이는 개발자의 의도 하는것이다. 뭐 강제적으로 하는것이니깐. Sort 일단 알고리즘이라는것을 전처리하고 정렬에 대한내용이다 기본적으로 정렬이나 연결리스트나 이런 대한 자세한 내용이 있는 라이브러리 함수가 있다 그중에서 정렬같은경우 sort를 사용하는데 다른내용은없다 기본적으로 캐릭터 배열에서 들어간 내용을 알파벳 순서에 맡게 정렬하는내용이다 여기서 string을..
2010.05.27 -
5월26일 C++(템플릿함수,inline,클래스밖 함수구현템플릿,virtual 객체기반)API(비트맵뷰어)
기본적으로템플릿같은경우 함수로 만들수가 있다. 함수의 반환을 잘모를때 그리고 안에 인자까지 템플릿 T로 선언한것을 받아올수 있다 그래서 다음 보기처럼 num1>num2?num1:num2으로 참이면 앞에꺼 거짓이면 뒤에 것을 리턴한다. 그래서 템플릿함수를 다음과 같이 다른 자료형으로 사용이 가능하다 첫번째는 int형으로 받고 두번째는 float형으로 받고 템플릿이 없다면 함수를 2개를 구현해야한다. 그래서 장점이 있다. 클래스안에 함수를 템플릿을 통해서 밖으로 빼냈을때 스코프연산을 사용한다 하지만 템플리 Z를 사용하기 때문에 그에대한 정의를 내려줘야한다. 기본적으로 밖으로 냈기 때문에 그에 따른 템플릿을 따로 정의해야하고 그리고 스코프 연산앞에다가 이름을 적어주게 된다. 여기서 큰특징은 만약 inline인..
2010.05.26 -
5월25일 C++(복사생성자,대입연산자,종속대입연산자.종속복사생성자,템플릿)API(simplepaint2)
복사생성자는 객체가 만들어질때 호출되는것이아니라 이미 만들어진 객체가 다른곳으로 복사될때 호출되는생성자이다 1. 함수의 파라미터로 객체의 전달 2. 함수가 객체를 리턴 3. 객체의 선언에 사용된 대입 연산자 4. 임시 객체의 복사 5. 디폴트 파라미터에 명시된 생성자 복사생성자를 따로 구분지어서 정의를 내릴수도 있고 값을 넣어줄수도 있다. 클래스 정의된 객체에 다른 객체를 대입하는경우 자동으로 대입연산이 되는것이 아니고 복사생성자사 호출되어버린다. 그래서 객체에 선언에 사용되는 대입연산자는 이미 복사생성자 호출이 되어버린다. 그래서 대입연산자로 바꿔보겠다. 복사생성자의 간단한 예이다. 일단 기본적으로 생성자는 객체가 한번 생성될때 딱한번 실행되는것이 원칙이다 하지만 이 생성자를 여러번 사용하려고하는경우 ..
2010.05.25 -
5월24일 C++(SmartPointer,namespace,연산자오버로딩 API(대화상자 후반부)
예외처리할때 try와 catch그리고 throw을 알아보았다. 그리고 옆에 그림에서 기본적인 throw후에 바로 catch로 이동한다. 이경우 동적할당을 받은후 메모리를 반환을 해야하는데... 반환하지 못하고 catch를해서 바로 리턴으로 종료한다. 이럴경우 메모리가 쌓이면 과부화가 걸려서 안좋다. 예외처리시에 이런경우를 잘봐야한다. 그에 대한 내용이다. 이에 대한 해결로 클래스를 사용해보았다. 일단 기본적으로 함수안에 객체를 만들고 그 객체 대한 클래스가 소멸할시에 메모리 반환이다 하지만 중요한점은 얼마만큼 크기가 동적할당되어있는지를 받아와야한다. 동적할당 크기 만큼 받아오기 힘들다그래서 char * const ptr을 사용해서 ptr의 크기를 고정시켜두고 :ptr(p)를 통해서 생성자로 크기를 넘긴다..
2010.05.24