|
헤머에 머리를 박은듯...
엄청난 도움이 되었습니다.
감사합니다
김시환 님이 쓰신 글 :
: 쓰레드를 꼭 헤더파일에 정의해야 할 이유는 없습니다. 헤더 파일에 정의하는 경우 제3의 Module에서 쓰레드를 정의한 모듈을 다시 참조할 경우에 필요해서 쓰는 이유밖에 없습니다.
:
: 제 경우는 한개의 모듈(Main 모듈이 되겠지요)에서만 쓰레드를 사용하기 때문에 CPP 에만 정의해 사용하고 있습니다.
: 그렇지 않고 여기 저기 여러 모듈에서 동일한 쓰레드를 제어할 필요가 있다면 차라리 Global 모듈을 하나 만들고 extern 으로 선언해서 사용하세요...
:
: global.h 파일에는 extern Threads* pThread ;
: global.cpp 파일에는 Threads* pThread ;
:
: 이렇게 정의해 놓고
:
: Main.h 모듈이 있다는 가정하에 #include "global.h"
: 만 선언하면 사용할 수 있습니다.
:
: 도움이 안된다면 지금 하고 있는 소스를 올려 놓으시면 답변을 드리지요...
:
:
: 사악왕 님이 쓰신 글 :
: : 저의 질문방식이.... 조금많이 ㅜ.ㅜ 난제인가보네요ㅠ,ㅠ
: :
: : 예전에는요 cpp안에서 쓰래드를 사용할꺼라는 선언을 했거든요.
: : 그래서 이제는 h안에다가 쓰래드를 사용할꺼라는 선언을 하자라는 생각에
: : 그렇다고 다시 cpp안에 다가 선언을 하고 사용을 하면 되는데 그렇게 하면 나중에 문제가 심각해질까봐
: : 지금부터라도 h안에다가 선언을 할려고 하고 있습니다.
: :
: : 이해가 않되는겁니다.
: :
: : #include는 다했습니다.
: : #include는 빼먹지 않고 꼬박꼬박 하고 있습니다....
: :
: : 질문1과 질문2는 공통적인 문제가 있습니다.
: :
: : 헤더파일에서 선언을 못한다는겁니다....
: : 헤더파일에다가 선언을 할경우에는
: : E2303 Type name expected ->에러가 떠서 절 난감하게 만들뿐입니다.
: :
: :
: : 김시환 님이 쓰신 글 :
: : : 질문의 내용이 어려운거 보다는 질문의 내용이 뭔지를 이해하는게 더 어렵네요...
: : : 좀 답변하는 사람이 이해하기 쉽도록 질문을 해 주시면 답변도 더 정확해 질듯 한데요..
: : :
: : : 그냥 제가 이해한 범위내에서
: : :
: : : 질문1 의 경우 Threads 를 선언한 헤더 파일을 #Include 할때 Untd.chh (Untd.cpp 파일일 듯 한데) 에 선언되어 있어서 그럴 겁니다. Untd.h 에 선언하고 싶다면 Untd.h 파일에 #Include 를 선언해 보세요...
: : :
: : : 질문2 도 동일한 경우 일듯 한데요.. TIn *f_th 를 사용하기 위한 헤더 정의가 빠져 있어서 그럴겁니다.
: : :
: : : TIn 을 정의한 헤더 파일을 void __fastcall ppp(TIn *f_th); 를 선언한 파일의 맨 위에 #include 해 보세요...
: : :
: : : 사악왕 님이 쓰신 글 :
: : : : 질문1 쓰래드를 생성하고 쓸려고 하면
: : : :
: : : : 불르는 곳에서
: : : :
: : : : Threads *a;
: : : : 이런식으로 해서 쓰래드를 부르는걸로 알고 있는되요
: : : : Untd.chh에서 Threads *a; 위쪽에다가 입력하면 에러가 않뜨고요
: : : : Untd.h에서 Threads *a; 할경우는 에러가 뜨더라고요
: : : : [BCC32 Error] Untd.h(249): E2303 Type name expected
: : : : 이러한 에러가 왜 뜨는지 모르것습니다....
: : : :
: : : :
: : : : 질문2
: : : :
: : : : void __fastcall ppp(TIn *f_th);
: : : :
: : : : 이런식으로 ppp(쓰래드 );
: : : : 받을려고 하는되요 파라메터값으로요
: : : : 하면 이런한 에러가 뜨더라고요
: : : : [BCC32 Error] UntCo.h(60): E2293 ) expected
: : : : 저것을 입력을 하면요
: : : : 왜 그러는지 모르것습니다.
|