2010-11-19 6 views
5

Visual Studio 2008에서 Qt를 사용하는 프로젝트에서 리팩토링을하고 있는데, 결코 호출되지 않는 함수와 메서드를 찾는 간단한 방법이 있는지 알고 싶습니다.never-called 함수 찾기

답변

9

이 Qt는 프로젝트 사용하여 GCC를 구축 할 수있는 기회가 http://en.wikipedia.org/wiki/Cppcheck

+0

감사합니다. 시도해 보겠습니다. – gregseth

+0

Cppcheck에이 기능이 있습니까? 나는 그것을 발견 할 수 없다. – Benjamin

+2

설명서의 2.5.2 절 @ @cppcheck.sourceforge.net/manual.pdf를 참조하십시오. – munissor

4

편집 옵션에 -Wall이 지정해야합니다. (또는 - 사용 함수). VS에서 컴파일러 옵션을 확인하십시오.

1

같은 정적 코드 분석 도구를 시도 할 수 있습니다? 그렇다면 gcov를 사용할 수 있습니다. 실행 중에 호출 된 모든 메소드를 알려줍니다. 그런 다음 ctags를 사용하여 사용 가능한 모든 메소드 목록을 작성할 수 있습니다. 이 두 세트에서 호출 할 수없는 것을 찾을 수 있습니다.

원인은 gcov에서 사용하는 기능의 전체 목록을 제공하기에 충분할만큼 오래 실행해야합니다.

난 항상 "그렙"을 선호 한

2

(나는 링커 또는 컴파일러 스위치. :-)를 사용하는 쉬운 방법이 생각)하지만 조금 "오래된 학교"가 될 수 있습니다.

Visual Studio는 유용하지만 100 % 신뢰할 수없는 콜 그래프를 작성합니다.

또 다른 대안은 함수를 주석 처리하고 프로젝트가 여전히 링크되는지 확인하는 것입니다.

+0

모든 기능이 아닌 하나의 기능 만 확인하는 것이 좋습니다. – gregseth

관련 문제