2009-03-26 2 views
2

Visual Studio에서는 클래스 생성자 코드와 이벤트 처리 코드를 .h 파일에 넣으려고합니다. 나는 작은 1 인의 프로젝트에만 관여했으며 일반 산업 표준이 무엇인지 궁금해하고있었습니다.Visual Studio C++의 유용한 정보

Visual C++ 응용 프로그램의 경우 .h 파일에 어떤 코드를 넣을 계획입니까? 저는 고전적인 C++ 방식으로 .h 파일에서 클래스를 선언하고 .cpp 파일에서 코딩하는 데 익숙합니다. 여전히 Visual Studio 응용 프로그램에 적용됩니까?

나는이 점에 대해 내가 선호하는 강한 C 배경을 가지고있다. VSC++ 컴파일러는 신경 쓸 것 같지 않습니다.

요약하면 어떤 유형의 파일을 넣어야합니까?

TIA 는 비주얼 C를 들어

답변

3

널리 인정되는 산업 표준은 없습니다. 함수 정의를 헤더에 넣음으로써 컴파일러에게 코드를 인라인 할 수있는 좋은 기회를 제공합니다. 이점은 코드를 더 빨리 실행할 수 있다는 것입니다. 그러나 헤더를 포함하는 클라이언트에 더 많은 코드를 노출해야하므로 구현을 변경할 때 더 많은 파일을 다시 컴파일 할 수 있습니다.

도구를 사용하는 데 드는 비용도 고려해야합니다. VC++의 마법사는 헤더에 함수를 넣으려고하기 때문에 사용자가 동의하지 않으면 매번 함수를 이동해야합니다.

정말 프로젝트마다 다릅니다.

+0

감사합니다. Carl. 당신이 말하는 것은 내가 눈치 챈 것입니다. 나는 내가보고 싶었던 것을 보지 못했다는 확신을 필요로했다. – EndsOfInvention

2

을 종료 ++ 응용 프로그램 프로젝트 어떤 코드 것이다 .H 파일에 하나 개 넣어? 나는 고전적인 모드 .h 파일에 클래스를 선언하고 .cpp 파일로 코딩하는 C++ 방식에 익숙하다. 여전히 Visual Studio 응용 프로그램에 적용됩니까?

짧게 : 예 길게 : 사람이나 언어에 따라 다릅니다. C++에서 헤더는 선언을위한 것이며 cpp는 코딩을위한 것입니다. C#의 경우 하나의 파일 (또는 인터페이스 2를 사용하는 경우)

3

MFC를 사용하는 경우 생성 된 코드에 대해 이야기하는 경우 혼자 두는 것이 가장 좋습니다.

'정상적인'C++ 개발을 수행하려는 경우 클라이언트 코드가 너무 많은 구현 세부 정보에 의존하지 않으므로 머리글에서 벗어날 수있는만큼 작게 입력하십시오. 빠져 나갈 수있는 것은 템플릿을 사용하는 정도와 성능 예산이 지원할 수있는 간접 지출의 정도에 따라 다릅니다.

1

이것은 사소한 것처럼 보일 수 있지만 단지 기억해야합니다. 헤더는 여러 위치에 # 포함됩니다. (헤더를 포함한 헤더는 더 복잡합니다.) 헤더를 변경할 때마다 많은 파일이 다시 컴파일됩니다. 헤더에 자주 변경되는 코드를 적게두면 종속 파일의 재 컴파일을 줄일 수 있습니다.

또 다른 한가지 : 정리 된 헤더 파일은 클래스/폼이 제공해야하는 것에 대한 간단한 개요를 제공합니다.

관련 문제