본문 바로가기
C++

C++ 상수 알아보기

by 미닛_minute 2023. 10. 11.

오늘은 C++ 상수에 대해서 알아보도록 하겠습니다. 수는 프로그램에서 변하지 않는 값을 저장하고 사용하는 데 중요한 역할을 합니다. C++은 여러 유형의 상수를 지원하며, 이러한 상수를 활용하여 프로그램의 가독성과 유지보수성을 향상할 수 있습니다.

 

 

 

C++-상수-알아보기
C++ 상수 알아보기

[ 목차 ]

     

     

     

    C++ 상수(Constant) 강의

    1. 상수의 개념

    1.1 상수란?

    상수는 프로그램에서 변하지 않는 값을 나타내는 식별자(identifier)입니다. 즉, 한 번 정의된 상수는 프로그램 실행 동안 그 값을 변경할 수 없습니다. 이러한 불변성은 프로그램의 안정성과 가독성을 향상합니다.

    1.2 상수의 활용

    매직 넘버(Magic Number) 방지: 상수를 사용하면 숫자 리터럴을 직접 사용하는 것보다 가독성이 높아집니다.
    코드 수정 용이성: 상수를 사용하면 상수 값을 한 곳에서 변경하면 해당 값을 참조하는 모든 곳에서 변경됩니다.

    const int MAX_COUNT = 100;
    int numbers[MAX_COUNT];

     

     

     

    2. 리터럴 상수(Literal Constants)

    2.1 리터럴 상수란?

    리터럴 상수는 프로그램 코드에서 값 자체를 나타내는 상수입니다. 주로 숫자, 문자, 문자열, 불리언 값을 나타내는 데 사용됩니다.

    int x = 42; // 42는 리터럴 정수 상수
    char letter = 'A'; // 'A'는 리터럴 문자 상수

     

     

     

    3. const 한정자

    3.1 const 한정자란?

    const 한정자는 변수를 상수로 선언하는 데 사용됩니다. const로 선언된 변수는 값을 변경할 수 없습니다.

    const int MAX_VALUE = 100;

     

    3.2 const와 가변성

    const를 사용하면 변수의 가변성을 제한할 수 있습니다. 즉, 해당 변수는 읽기 전용(read-only)이 됩니다.

    const int pi = 3.141592;
    pi = 4; // 에러: 상수에 대한 할당 시도

     

     

     

    4. 열거형 상수(Enum Constants)

    4.1 열거형 상수란?

    열거형(enum) 상수는 관련된 상수 값을 그룹화하는 데 사용됩니다. 각 열거 상수는 고유한 정수 값을 가집니다.

    enum Color {
        RED,   // 0
        GREEN, // 1
        BLUE   // 2
    };
    Color selectedColor = GREEN;

     

     

     

    5. 매크로 상수(Macro Constants)

    5.1 매크로 상수란?

    매크로 상수는 전처리기 매크로를 사용하여 정의됩니다. 매크로는 코드 전처리 단계에서 텍스트 치환을 수행하므로 주의가 필요합니다.

    #define MAX_SIZE 100
    int numbers[MAX_SIZE];

     

     


    6. 상수의 자료형

    6.1 상수의 자료형

    상수는 자료형을 가집니다. 자료형은 해당 상수가 어떤 유형의 데이터를 나타내는지를 정의합니다.

    const double PI = 3.141592; // double 자료형 상수
    const int MAX_COUNT = 100; // int 자료형 상수

     

     

     

    7. 상수와 함수

    7.1 상수와 함수 매개변수

    함수 매개변수를 const로 선언하면 해당 매개변수를 변경하지 않겠다는 의도를 나타낼 수 있습니다. 이는 함수의 안정성을 높이고 의도치 않은 변경을 방지합니다.

    void printValue(const int value) {
        // value를 변경할 수 없음
        std::cout << value << std::endl;
    }

     

     

     

    8. 상수와 클래스

    8.1 상수와 클래스 멤버 함수

    클래스 멤버 함수 내에서 const 키워드를 사용하면 해당 함수에서 객체의 상태를 변경하지 않겠다는 의도를 나타냅니다. 이로써 상수 객체에서만 호출할 수 있는 함수를 정의할 수 있습니다.

    class Circle {
    public:
        double getArea() const {
            return PI * radius * radius;
        }
    private:
        const double PI = 3.141592;
        double radius;
    };

     

     

     

    마무리

    C++에서 상수는 가변성을 제한하고 프로그램의 가독성을 향상시키는 데 중요한 역할을 합니다. 리터럴 상수, const 상수, 열거형 상수 등 다양한 상수를 활용하여 프로그램을 작성하면 코드의 안정성과 유지보수성을 향상할 수 있습니다. 상수의 사용은 C++ 프로그래밍에서 필수적인 개념 중 하나이며, 실무에서는 올바르게 사용하는 것이 중요합니다.




    'C++' 카테고리의 다른 글

    C++ 기본 타입 알아보기  (0) 2023.10.13
    C++ 변수 알아보기  (1) 2023.10.09
    C++ iostream 알아보기  (0) 2023.10.04