그래서이 C++ 테스트가 있는데 선생님은 코드에서 숫자를 직접 사용하는 대신 상수를 선언하는 것이 정말 어렵습니다. 아래의 예제에서 나는 ZERO를 상수로 선언했습니다.코드 내에서 상수 선언 또는 숫자 사용
이 작업이 불필요한 작업인가요? 이 방법은 더 많은 메모리를 차지하거나 코드를 "느리게"만드나요?
int main() {
int kmStart, kmEnd;
const int ZERO = 0;
cout << "Starting Kms? ";
cin >> kmStart;
cout << "Ending Kms? ";
cin >> kmEnd;
while (kmStart < ZERO || kmStart > kmEnd) {
cout << "Invalid Input!" << endl << endl;
cout << "Starting Kms? ";
cin >> kmStart;
cout << "Ending Kms? ";
cin >> kmEnd;
}
}
상수가 해결 및 컴파일시에 최적화됩니다. 런타임시 추가 메모리를 사용하거나 성능을 저하시키지 않습니다. – user0042
물론 이것은 불필요합니다! 그것은 상수가있는 것이 아닙니다! 사실, Bathshebas 대답에서 볼 수 있듯이, 이것은 실제로 더 큰 프로그램에서 상처를 줄 수 있습니다! –
상수가 'ZERO'인 것은 상수 인 'FORTY_FIVE'와 같습니다. 리터럴 값'45'을 입력하는 것과 다르지 않습니다. 상수를 사용하여 목적을 설명하는 특정 값이 아닌 것을 나타냅니다. – Galik