-
C++) symbolic constants 심볼릭 상수C++ 2022. 11. 17. 22:22
https://www.inflearn.com/course/following-c-plus/dashboard
홍정모의 따라하며 배우는 C++ - 인프런 | 강의
만약 C++를 쉽게 배울 수 있다면 배우지 않을 이유가 있을까요? 성공한 프로그래머로써의 경력을 꿈꾸지만 지금은 당장 하루하루 마음이 초조할 뿐인 입문자 분들을 돕기 위해 친절하고 자세하
www.inflearn.com
재사용성이 높은 상수 같은 경우는 헤더파일을 하나 만들어서 constant들을 모아 namespace 안에 따로 정의해두는 편이 좋다. 이때 compile시에 상수 값이 결정되어야 한다는 걸 명확히 하기 위해 constexpr을 사용하기도 한다.
#pragma once namespace constants { constexpr double pi(3.141592); constexpr double avogadro(6.0221413e23); constexpr double moon_gravity(9.8 / 6.0); // ... } // MY_CONSTANTS.h
#include <iostream> #include "MY_CONSTANTS.h" using namespace std; // 파라미터엔 const가 붙는 경우가 많음 void printNumber(const int my_number) { cout << my_number << endl; } int main() { // 상수는 값을 바꿀 수 없기에 반드시 초기화를 해줘야한다. const double gravity{ 9.8 }; printNumber(5); // compile시 결정된다는걸 명확히 표기함 constexpr int my_const(123); int number; cin >> number; const int special_number(number); // runtime에 결정 double radius; cin >> radius; double circumference = 2.0 * radius * constants::pi; cout << circumference << endl; return 0; }
'C++' 카테고리의 다른 글
C++) 비트단위 연산자 Bitwise operators (0) 2022.11.18 C++) 연산자 (0) 2022.11.18 C++) char type 문자형 (0) 2022.11.17 C++) Floating point numbers 부동소수점 수 (0) 2022.11.17 C++) Fixed-width Integers 고정 너비 정수 (0) 2022.11.17