warning C4100: unreferenced formal parameter

오늘 ECMiner 에서 일부 프로젝트를 워닝레벨4로 올려서 빌드를 해봤는데 새롭게 나타나는 워닝중 일부가 함수의 매개변수로 선언은 되어있지만 함수내부에서 사용하지 않는 것을 워닝으로 알려주는것이 있었다.

흠~ 내가 짠 코드의 경우는 이런 워닝이 뜬다면 함수자체를 수정해 주면 되지만 다른 사람이 짠 코드는 막무가내로 수정하기 뭐할뿐더러 추상클래스인 경우도 있고 자식 클래스도 이런 경우가 있을것 같다.

이런 경우 수정하자니 뭐시기 하고 내비두자니 워닝이 거슬린다.
해결책은 함수 정의부분의 변수’‘ 을 선언한 부분만 주석처리하면 된다.

void CMakeTreeDoc::SetModifiedFlag(BOOL bModified ) { }

이걸
void CMakeTreeDoc::SetModifiedFlag(BOOL /*bModified*/ ) { }

이렇게 하면 워닝도 안뜨고 이후 상속 관련해서도 문제가 없다.

ps. http://lagoons.net/wiki/wiki.php/WarningLevel4 에 관련 내용을 적었다.

댓글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다