linux vim 개발환경 태그 생성#ctags -R C++ 소스 코드에 대해서 태그 파일 생성#ctags -R --language-force=c++ --extra=+q --fields=+i *.cpp *.h vi로 시작 시 태그 탐색#vi -t xxxxvi 내에서 태그로 탐색:ta xxxx 표준 C라이브러러에 대한 태그 생성심볼릭 링크는 제외하고 태그 파일 명칭을 stdlib.tag로 생성.#ctags --links=no -f stdlib.tag -R /usr/include cscope 데이터베이스 생성#find ./ -name *.[chS] -print > cscope.files cscope 실행두 창 사이 이동: tab종료: ctrl + d vi에서 ta 대신 cscope 사용 설정.vimrc에 set cst ":ta 또는 .. 더보기 Invoke와 BeginInvoke C++ Win32 응용프로그램의 동작 방식을 보면 Loop를 돌면서 메시지를 처리하는 방식이다. 이 메시지들 중에 화면을 그리는 메시지, 동작에 관련된 메시지, 종료 메시지 등이 존재한다. 그래서 이 Thread 루틴에 다른 Thread에서 어떤 메시지를 전달하고 싶을 때는 SendMessage()나 PostMessage()를 통해 전달하게 된다. 이 둘의 차이점은 동기 방식이냐 비동기 방식이냐이다. 즉, SendMessage()로 메시지를 전달하면 해당 메시지가 Loop Thread에서 처리되기 전까지는 반환되지 않는다. 그로 인해 호출한 Thread는 Holding이 된다. 그리고 만약 Loop Thread가 그 메시지를 처리하는 과정에서 자원을 필요로 하는 자원을 호출한 Thread가 쥐고 있다면 .. 더보기 C# WinForm Cannot access a disposed object. C#으로 windows form 정의한 후 해당 form 인스턴스를 생성했다가 'x' 눌러 닫으면 garbage collection이 되어 해당 인스턴스가 사라진다. 그런데 다시 그 windosw form을 표시하려고 그 인스턴스에 접근한다면 아래와 같은 메시지가 발생한다.An unhandled exception of type 'System.ObjectDisposedException' occurred in System.Windows.Forms.dllAdditional information: Cannot access a disposed object.이를 해결하기 위해서는 해당 windows form 정의에서 아래와 같이 설정해 주어야 한다.즉, close를 하면 인스턴스를 삭제하는 것이 아니라 Hide를 .. 더보기 이전 1 2 3 4 5 6 ··· 9 다음