C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[74720] Re:TThread관련해서 질문드립니다.
빌더(TWx) [builder] 3301 읽음    2018-01-09 22:22
박태성 님이 쓰신 글 :
: 빌더로 만들어진 소스를 델파이로 포팅중입니다. C++언어는 기본문법정도만 압니다.
:
: 아래와 같은 코드가 있습니다.
: <<쓰레드 정의>>
: class TBroadcastThread : public TThread
: {
: public:
:     __fastcall TBroadcastThread(TThreadPriority ThreadPriority, stopIndicator funcStopIndicator) : TThread(false)
:     {
:         Priority = ThreadPriority;
:         FreeOnTerminate = true;
:         FFuncStopIndicator = funcStopIndicator;
:     }
:     void __fastcall Execute()
:     {
:         ....
:     }
: };
: << 쓰레드 실행>>
:     CHANGE_PATIENT_THREAD = new TBroadcastThread(BC_PATIENT_PRIORITY, CloseIndicatorForm);
:     CHANGE_PATIENT_THREAD->OnTerminate = CHANGE_PATIENT_THREAD_Terminated;
:     CHANGE_PATIENT_THREAD; <<-- 요부분
:
: 코드가 위와 같이 작성되어 있는데 다른부분은 다 이해하겠는데 마지막줄에 CHANGE_PATIENT_THREAD;의 의미를 모르겠습니다.
: CHANGE_PATIENT_THREAD를 실행한다는 의미인가요?
: 생성자에서 TThread(false)로 되어 있으니 쓰레드는 생성되자마자 실행될것 같은데 아닌가요?
:
: 델파이로 변환시 마지막줄은 제거하고 마이그레이션을 하면 될까요?
:
:


답변:


실행과 관련 없는 코드입니다.

void Fun(TObject *Sender)
{
...
}

컴파일 Warning 옵션은 컴파일러 코맨드라인으로 전달 될 수도 있고
소스나 헤더파일에 정의될 수도 있는데

소스나 헤더파일 또는 코맨드라인에 'Parameter x is never used ' 워닝을 무시하도록 되어있지 않다면
Fun() 바디 안에서 Sender 파라미터를 사용하는 코드가 없다면
'Parameter Sender is never used'라는 컴파일 워닝 메세지가 뜰 겁니다.

그럴 때.. Sender 파라미터를 참조하지 않고 있으니 워닝을 내지 말라고 컴파일 옵션을 줄 수도 있지만
아래와 같은 식의 더미 참조를 통해서 워닝을 막을 수도 있습니다.

void Fun(TObject *Sender)
{
     (void)Sender;
     또는...
     Sender;

변수도 마찬가지로...

void Fun()
{
     TSomeVar *p;
     (void)p;
     또는...
     p;

더미 참조를 이용해서 'p is declared but never used' 워닝을 막을 수 있고...
코드실행에 영향을 주는 별다른 의미가 있는 건 아닙니다.


+ -

관련 글 리스트
74716 TThread관련해서 질문드립니다. 박태성 3308 2018/01/08
74720     Re:TThread관련해서 질문드립니다. 빌더(TWx) 3301 2018/01/09
74739         답변 감사드립니다. 박태성 3119 2018/01/15
74738         답변 감사드립니다. 박태성 2984 2018/01/15
74737         답변 감사드립니다. 박태성 3062 2018/01/15
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.