상수 값을 변수 대신 직접 사용하여 계산을 단순화합니다.
메모리 접근 횟수 감소 → 실행 시간 단축, 실행 파일 크기 감소
예시
int foo() {
int a = 5;
int b = a + 3; // b는 항상 8
return b * 2;
}
int foo() {
return 16; // 상수를 직접 계산
}
컴파일 시점에 계산 가능한 상수 값을 미리 계산합니다.
산술 연산 횟수 감소 → 실행 시간 단축, 실행 파일 크기 감소
예시
int foo() {
return 3 + 4 * 2; // 상수 계산 가능
}
int foo() {
return 11; // 계산된 결과 반환
}
동일한 식을 반복 계산하지 않고, 한 번 계산한 결과를 재사용합니다.
중복 계산 제거 → 실행 시간 단축, 실행 파일 크기 감소
예시
int foo(int x, int y) {
int a = x * y + 10;
int b = x * y + 20;
return a + b;
}
int foo(int x, int y) {
int temp = x * y;
int a = temp + 10;
int b = temp + 20;
return a + b;