http://www.devpia.com/MAEUL/Contents/Detail.aspx?BoardID=50&MAEULNo=20&no=829244&ref=829244 나는 분기문을 좀 싫어한다 -.-;; 뭔가 소스가 길어지는 느낌이라서.. 예를 들어 단순히 form열기 같은 것을 하는데 switch문으로 길게 늘리는게 뭔가 안깔끔해 보인다. switch(nIndex) case: 0 Form1열기 case: 1 Form2열기 case: 2 form3열기 이걸 간결히 해주기 위해 아래처럼 쓸 수 있다. Form arFrom[3]; arForm[0] = Form1; arForm[1] = Form2; arForm[2] = Form3; arForm[nIndex].폼열기 이걸 다른 곳에도 응용해 보면, 입력한 숫자에..
우선 DLL만드는건 아래처럼 하면 됨. empty project에 체크하지 말것. 체크하지 말아야지 DllMain까지 자동으로 만들어준다. 그리고 이제 아무 것도 건들지 말고 그냥 예제 써보자면 calc.c랑 calc.h를 만들고 각각 이렇게 입력한다. //calc.h extern "C" __declspec(dllexport) int add(int lhs, int rhs); //calc.c #include "stdafx.h" //요건 상황에 따라 써야할때도 있고 안써도 될 때도 있음. #include "calc.h" extern "C" __declspec(dllexport) int add(int lhs, int rhs) { return lhs+rhs; } 그리고 컴파일 하면 DLL파일과 lib 파일이 나..
상속한 클래스를 넘겨 줬을 때 해당 클래스의 자료형이 뭔지 정확히 알기 위해 사용한다. 컴파일 시에 RTTI를 사용하여 컴파일 하면 vtable을 사용 할 수 있다. vtable은 가상 함수 테이블인데 아래의 소스를 함 보자. class Parent{ public: virtual void func(Parent obj); }; class Child : public Parent{ public: virtual void func(Parent obj); }; 이런 클래스가 있을 때 Parent p; Child c; p.func(p); p.func(c); 이렇게 하면 함수 func에서는 인자로 들어온 Parent obj에 대하여 이것이 Child인지 Parent 인지 알 길이 없다. 자바에서는 걍 p.getClas..
dynamic_cast const_cast reinterpret_cast static_cast A가 B의 superclass일 때 A* a; B* b = new B(); a = (A *)b; 이거는 dynamic_cast(b);와 같음 dynamic_cast는 safe함. 서브->슈퍼 캐스팅은 상관 없지만 슈퍼->서브 캐스팅은, C style로 캐스팅하면 캐스팅이 되긴 하지만, 참조 할 수 없는 멤버를 참조 하려 하면 런타임 에러가 발생함. dynamic_cast를 이용하면 서브->슈퍼 일때만 캐스팅 하고 아닐 대는 null을 참조함. 따라서 null 체크를 통해 런타임 에러를 방지할 수 있다. 덧, 포인터로 선언한 클래스 일때만 된다. Parent *p1 = new Child; Parent *p2 = ..
Service에서 Activity를 띄우는 순간에 현재 Activity가 속해 있는 Application이 만약 실행 돼 있었다면, 해당 화면에 보이는 Application의 Activity가 뜬 다음에 그 위로 호출한 Activity가 올라온다.. 즉..Activity가 자기 Application의 스택을 다 가져온다... 뒤로 가기 버튼을 누르면 돌아가는 이전 스택이란 녀석이.. 미리 Application에서 띄워져있던 Activity이다. Application이 실행되어 있지 않은 상태라면 호출한 Activity만 뜨던데.. 어떻게 처리해야할지 난감하다.. 거의 일주일째 삽질 중 인거같다 -.- ----------------------------------------------------------..
- Total
- Today
- Yesterday
- 드라이버
- NDK
- Quiz
- algorithm
- android
- database
- 안드로이드
- AWS
- API
- 프로그래밍
- MFC
- jni강좌
- it
- gcc
- 리눅스
- source
- Troubleshooting
- 음악
- Visual C++
- C
- linux
- jni
- C++
- Python
- driver
- db
- Cloud
- kering
- winapi
- java
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 |