전역 변수의 경우
키: 전역 사용을 피하세요.
전역 변수를 부적절하게 사용하면 프로그램 설계가 제대로 되지 않습니다. 다음은 전역 변수의 부적절한 사용으로 인해 발생하는 몇 가지 나쁜 부작용입니다.
- 모듈화를 깨다
- 버기 코드
- 지저분하고 매우 혼란스러운 코드 – 일명 스파게티 코드
- 디버깅 및 유지 관리가 어려움
- 발생하기 쉬운 오류
다음은 좋은 전역 변수입니다.
int LeftEyePort = PORT1; int RightEyePort = PORT2; 플로트 WheelDiameter = 10.25; float EncPerCM = 360.0 / (WheelDiameter * PI); int 메인( ) { .... }
로봇이 바퀴 직경이나 실행 중에 포트에 연결된 장치 유형을 변경할 수 없다면 이를 const 전역 변수로 선언하는 것이 좋습니다.
예를 들어:
const int LeftEyePort = PORT1; const int RightEyePort = PORT2; const float WheelDiameter = 10.25; const float EncPerCM = 360.0 / (WheelDiameter * PI);
지역 변수의 경우
- "현지화된" 단순 카운터에 단일 문자 사용을 제한해 보세요.
예를 들어
for ( int i=0 ; i< 10; i++) { .... }
단순한 카운터가 아닌 중요한 맥락을 가진 것을 나타내기 위해 "i"를 사용하지 마십시오.
예를 들어 엔코더 값을 나타내기 위해 "e"를 사용하지 마십시오.
- 그것이 나타내는 것과 관련이 있어야 합니다. 예를 들어 X 대신 "totalEncoder"를 사용하여 전체 인코더 값을 나타냅니다.
- 다음과 같이 변수 앞에 데이터 유형을 붙입니다.
int iValue; 부동 f값; 개의 이중 d값;
- 앞에 "_"를 사용하지 마십시오. 관례적으로 "_" 접두사가 붙은 변수는 "지시문"과 같은 매우 특별한 목적으로 사용됩니다. 지시문 구성은 컴파일러가 입력을 처리하는 방법을 지정하는 데 사용됩니다. 이에 대해서는 다른 기사에서 논의할 것입니다. 지시문에 익숙하지 않은 경우 변수 이름의 일부로 앞에 "_"를 사용하지 않는 것이 좋습니다.
- 가독성 극대화:
- 긴 이름에는 Camel 스타일을 사용하세요(예: encodePerCM, encPerRotation). 일부 프로그래머는 Encoder_per_cm과 같은 "_"를 사용하기를 좋아합니다.