전역 변수의 경우
키: 전역을 사용하지 마십시오.
전역 변수를 부적절하게 사용하면 프로그램 설계가 제대로 되지 않습니다. 다음은 전역 변수의 부적절한 사용으로 인해 발생하는 몇 가지 좋지 않은 부작용입니다.
- 모듈화 중단
- 버그 코드
- 지저분하고 매우 혼란스러운 코드 – a.k.a. 스파게티 코드
- 디버그 및 유지 관리가 어렵습니다.
- 발생하기 쉬운 오류
다음은 몇 가지 좋은 전역 변수입니다.
정수 LeftEyePort = PORT1; int RightEyePort = PORT2; float WheelDiameter = 10.25; float EncPerCM = 360.0 / (WheelDiameter * PI); int main( ) { .... }
로봇이 휠 직경 또는 실행 중 포트에 연결된 장치 유형을 변경할 수 없는 경우 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"를 사용하지 마십시오.
- 그것이 나타내는 것과 관련되어야 합니다. 예를 들어 "totalEncoder"를 사용하여 총 인코더 값을 나타냅니다. , NS.
- 다음과 같이 변수에 데이터 유형을 접두어로 붙입니다.
정수 iValue; float fValue; 더블 dValue;
- 선행 "_"를 사용하지 마십시오. 관례에 따라 "_" 접두사가 붙은 변수는 "지시문"과 같은 매우 특별한 목적으로 사용됩니다. 지시문 구성은 컴파일러가 입력을 처리하는 방법을 지정하는 데 사용됩니다. 이것은 다른 기사에서 논의될 것입니다. 지시문에 익숙하지 않은 경우 변수 이름의 일부로 선행 "_"를 사용하지 않는 것이 좋습니다.
- 가독성 극대화:
- 긴 이름에는 Camel 스타일을 사용하십시오(예: encoderPerCM, encPerRotation). 일부 프로그래머는 encoder_per_cm와 같이 "_"를 사용하는 것을 좋아합니다.