목록cpp (3)
NeuroWhAI의 잡블로그
std::numeric_limits::digits10 10진법 표기로 text -> T -> text 변환시 항상 자릿수가 보존되는 최소 자릿수 번호. 다르게 말하면 T 타입의 수로 변환할 문자열은 그 원본 텍스트의 digits10 자릿수까지만 항상 보존이 보장된다. 예) ::digits10 == 2 : "42" -> 42 -> "42"는 가능하지만 "200" -> -56 -> "-56"는 실패하니 2자리가 최대. 예) ::digits10 == 6 : "8.589973e9" -> 8.589974e9 -> "8.589974e9" 물론 어떤 수는 저 너머의 자릿수도 보존되지만 그건 예외일 뿐이고 항상 보장해야하는 경우엔 digits10 값을 이용. std::numeric_limits::max_digits10..
※ 아래 내용은 스택오버플로의 글을 공부하고 정리한 내용이므로 틀린 내용이 있을 수 있습니다. 템플릿 메타프로그래밍을 이용해서 특정 타입에 특정 멤버가 있는지 컴파일 타임에 확인할 수 있는 방법이 있습니다.일단 코드부터 보시죠. #include #include template struct has_member_foo : std::false_type { }; template struct has_member_foo : std::true_type { }; class Bar { public: int bar; }; class Foo { public: explicit Foo(int); int foo; }; int main() { using namespace std; cout
아래 링크는 읽어보시면 좋을 것들. execution.h : http://en.cppreference.com/w/cpp/header/execution policy : http://en.cppreference.com/w/cpp/algorithm/execution_policy_tag_t stackoverflow : https://stackoverflow.com/a/47706880 C++17에 추가된 표준이라고 합니다. 다 테스트는 안해봤는데 아직 제대로 지원하는 컴파일러를 못찾았습니다. 직역하면 '실행 정책'이 되겠네요. 알고리즘을 순차적으로 실행할지 병렬적으로 실행할지 선택권을 줍니다. 예를 들어서 C++17 버전의 std::sort를 보면 이렇게 ExecutionPolicy를 받는 버전이 추가됬는데 여기..