2010-05-08 5 views
7

내가 가지고 델파이 2007 응용 프로그램에서 다음 코드를델파이 비활성화 경고가 실패

[DCC Warning] BaseCriteriaObject.pas(255): H2077 Value assigned to 'CurObj' never used 

내가 경고를 이해하지만, 코드를 변경하지 않으 :이 경고를 생성

function TBaseCriteriaObject.RecursiveCount(
    ObjType: TBaseCriteriaObjectClass): integer; 
var  
    CurObj: TBaseCriteriaObject; 
begin 
    result := 0; 
{$WARNINGS OFF} 
    for CurObj in RecursiveChildren(ObjType) do 
    Inc(Result); 
{$WARNINGS ON} 
end; 

,이 경우 {$ WARNINGS OFF}가 작동하지 않는 것 같으므로 경고를 제거하려면 어떻게해야합니까?

답변

7
델파이 도움말에서

:

$ 경고 지시어는 프로시 저나 함수 수준 단위에서 작동합니다. 즉, 전체 절차 및 기능을 $ WARNINGS 지시문으로 묶을 수 있지만 프로 시저 또는 함수 내에있는 문 블록을 포함 할 수는 없습니다.

+1

건배! 또한 힌트가 아닌 경고로 보입니다. {$ HINTS OFF}는 그것을 불가능하게합니다. (명령문이 아닌 절차를 할 때) –

+2

함수에 사용되는 경고 설정은 함수의'end'에 도달 한 시점의 설정입니다. –

+0

@ Rob 케네디 : 재미있는 말. 당신은 컴파일러 소스를 보았음에 틀림 없다. – kludg