"정적 상수"
"정적 const"는 기본적으로 static(저장 지정자)과 const(유형 한정자)의 조합입니다.
static은 변수의 수명과 가시성/접근성을 결정합니다. 이는 변수가 정적 변수로 선언된 경우 프로그램이 실행되는 동안 내내 메모리에 남아 있는 반면 일반 또는 자동 변수는 함수(변수가 정의된 곳)가 끝나면 소멸된다는 것을 의미합니다.피>
const는 유형 한정자입니다. 유형 한정자는 유형 시스템을 통해 값에 대한 추가 정보를 표현하는 데 사용됩니다. 변수가 const 유형 한정자를 사용하여 초기화되면 값이 더 이상 변경되지 않습니다.
따라서 static과 const를 결합하면 static const를 사용하여 변수를 초기화할 때 프로그램이 실행될 때까지 해당 값을 유지하고 값의 변경을 허용하지 않는다고 말할 수 있습니다.
예시
#include<iostream> using namespace std; int main(){ int input = 10; static const int value = 5; input += value; cout << input; return 0; }사용
#정의"
전처리기 명령은 DIRECTIVES라고 하며 파운드 또는 해시 기호(#)로 시작합니다. # 앞에 공백이 있으면 안 되며 끝에 세미콜론이 필요하지 않습니다.
전처리 단계에서 수행할 수 있는 많은 작업은 다음과 같습니다.
-
#include 지시문을 통한 다른 파일 포함
-
#define 지시문을 통한 기호 상수 및 매크로 정의
일부 전처리기 지시문을 통해 일부 전처리기 지시문을 조건부로 컴파일하거나 실행할 수도 있습니다.
참고 - C++ 프로그램의 전처리 단계는 프로그램이 컴파일되기 전에 발생합니다. C++ 전처리기는 소스 코드가 컴파일되기 전에 실행되는 프로그램입니다.
프로그램에 원하는 헤더 파일을 포함할 수 있는 #include 전처리기 지시문을 사용하는 방법을 이미 배웠습니다. 이 토론 또는 우리의 토론은 #define 전처리기 지시문에 관한 것입니다.
#define 전처리기를 사용하면 기호 이름과 상수를 정의할 수 있습니다. 예를 들어,
#define PI 3.14159
이 문은 프로그램에서 모든 PI 발생을 3.14159로 변환합니다.
C++ #define 예제
이제 모든 PI가 #define 지시문으로 정의된 값인 3.14159 값으로 대체되는 완전한 예를 고려하십시오.
Input: PI 3.14159 Output: Area of Circle 314.15
예시
#include<iostream> using namespace std; #define PI 3.14159 int main() { int r = 10; float cir; cir = PI * (r * r); cout<<"Area of Circle: "<<cir<<endl; }
"열거"
열거형은 변수에 대한 값 집합을 지정하고 변수가 가능한 값의 작은 집합 중 하나만 가져올 수 있는 사용자 정의 데이터 유형입니다. 열거형을 정의하기 위해 열거형 키워드를 사용합니다.
enum direction {East, West, North, South}dir;
여기서 Enumeration 이름은 지정된 4개 값 중 하나만 사용할 수 있는 방향이며 선언 끝에 있는 dir은 열거형 변수입니다.
이를 이해하기 위해 간단한 예를 들어보겠습니다.
여기에서 West 값을 열거형 변수 dir에 할당했으며 dir 값을 표시했을 때 1로 표시되었습니다. 이는 기본적으로 값이 0부터 시작하여 증가하는 순서이기 때문입니다. 즉, East는 0, West는 1, North를 의미합니다. 2이고 남쪽이 3입니다.
Input: direction {East, West, North, South} dir=West Output: 1
예시
#include<iostream> using namespace std; enum direction {East, West, North, South} dir; int main(){ dir = West; cout<<dir; return 0; }
열거형 변수를 선언하는 또 다른 방법
위의 예에서 열거형 선언 중에 열거형 변수 dir을 선언한 것을 보았듯이 열거형 변수를 선언하는 또 다른 방법이 있습니다.
예시
#include <iostream> using namespace std; enum direction {East, West, North, South}; int main() { direction dir; dir = South; cout<<dir; return 0; }
출력
3
C++에서 열거형을 사용하는 이유
이제 enum이 무엇이고 프로그램에서 사용하는 방법을 이해했으므로 사용하는 이유에 대해 논의해 보겠습니다.
열거형은 변수에 가능한 값 집합 중 하나가 있을 것으로 예상되는 경우에만 사용됩니다. 예를 들어 방향을 유지하는 dir 변수가 있습니다. 네 가지 방향이 있기 때문에 이 변수는 네 가지 값 중 하나를 사용할 수 있습니다. 이 변수에 다른 임의의 값을 할당하려고 하면 컴파일 오류가 발생합니다. 이렇게 하면 컴파일 시간 검사가 증가하고 잘못된 상수를 전달하여 발생하는 오류를 방지할 수 있습니다.
자주 사용되는 또 다른 중요한 위치는 switch case 문입니다. 여기서 case 블록이 예상하는 모든 값은 열거형으로 정의할 수 있습니다. 이렇게 하면 switch 괄호에 전달한 열거형 변수가 허용하지 않아야 하는 임의의 값을 취하지 않도록 할 수 있습니다.