답변:
스타일과 실습에 따라 언어가 다를 수 있습니다. 다음은 JSF-AV-rules 에서 가져온 것으로 Stroustrup은 자신이 선호하는 코딩 표준으로 지적합니다.
AV 규칙 136
Declarations should be at the smallest feasible scope
이에 대한 근거는 다음과 같습니다.
This rule attempts to minimize the number of live variables that must be simultaneously considered. Furthermore, variable declarations should be postponed until enough information is available for full initialization
C ++을 사용하는 경우 필요할 때 변수를 선언하는 것이 좋습니다.
이것을 모범 사례라고 부를 수 있는지 확실하지 않습니다. 새 C 프로젝트에 대한 지침을 설정할 때 항상 변수가 사용되는 위치에 가깝게 선언하는 것이 좋습니다. 두 가지 이유로 인해 나중에 코드를 쉽게 리팩터링하는 것이 더 쉽습니다 (예 : 메소드 추출시). 또한 컴파일러가 더 나은 최적화를 수행하도록 도와줍니다.
나는이 의견에 혼자가 아닙니다. 여기에 같은 문제를 다룹니다 질문입니다 : /software/56585/where-do-you-declare-variables-the-top-of-a-method-or-when-you-need -그들에 대한 대답은 당신이 그들을 사용하는 곳을 선언하는 것입니다. Robert C. Martin의 'Clean Code'책에도 같은 방법이 설명되어 있습니다.
그러나 이전 C 표준 (C-89)을 사용하는 경우 함수 맨 위에 로컬 변수를 정의해야합니다. 아마도 C-89가 사용 된 때부터 가이드 라인이 남은 것일까 요? 지침을 작성한 사람에게 왜 규칙이 여전히 존재하는지 물어 보는 것이 좋습니다.