[c++] 표준 라이브러리의 수학적 전역 정적 객체
C++ 표준 라이브러리(STL)는 여러 유용한 수학적 상수 및 함수를 제공하는데, 이 중 몇 가지는 전역 정적 객체로 구현되어 있습니다. 정적 객체는 프로그램이 시작될 때 자동으로 초기화되고 프로그램이 종료될 때 함께 제거됩니다.
이러한 수학적 전역 정적 객체들은 C++ 표준 헤더 파일인 <cmath>
에 정의되어 있으며, 수학 상수와 함수를 사용할 때 편리하게 사용할 수 있도록 합니다.
수학적 상수들
전역 정적 객체로 구현된 몇 가지 중요한 수학적 상수는 다음과 같습니다.
- pi: 원주율을 나타내는 상수
- e: 자연 로그의 밑을 나타내는 상수
- nan: 숫자가 아님을 나타내는 상수
- inf: 무한대를 나타내는 상수
이러한 상수들은 다른 전역 변수들과 마찬가지로 프로그램 어디에서든 사용할 수 있습니다.
#include <iostream>
#include <cmath>
int main() {
std::cout << "원주율: " << std::acos(-1) << std::endl; // 전역 상수 pi를 사용하여 원주율을 출력
std::cout << "자연 로그의 밑: " << std::exp(1) << std::endl; // 전역 상수 e를 사용하여 자연 로그의 밑을 출력
return 0;
}
수학적 함수들
또한, 몇 가지 수학적 함수들도 전역 정적 객체로 제공됩니다. 예를 들면, std::sin()
, std::cos()
, std::tan()
과 같은 삼각함수들과 다양한 수학 함수들이 소개됩니다.
#include <iostream>
#include <cmath>
int main() {
double x = 2.0;
std::cout << "sin(2.0): " << std::sin(x) << std::endl; // 사인 함수 적용
std::cout << "log(2.0): " << std::log(x) << std::endl; // 로그 함수 적용
return 0;
}
결론
이처럼, C++ 표준 라이브러리는 수학적인 작업을 보다 편리하게 하기 위해 수학적 상수와 함수들을 전역 정적 객체로 제공합니다. 이는 C++ 프로그래머가 별도로 수학적 라이브러리를 사용하지 않고도 직접적으로 수학적 계산을 수행할 수 있게 합니다.
참고: https://en.cppreference.com/w/cpp/numeric/math