[C++][중급] safe bool, optional explicit(C++20이후) 이란?


[C++][중급] safe bool, optional explicit(C++20이후) 이란?

이번에는 safe bool, optional explicit 에 대해 알아보겠습니다. 1. safe bool 이란? 2. optional explicit 이란? safe bool 이란? 아래와 같은 예시를 보겠습니다. Machine m 이란 객체의 유효성을 if 문으로 조사하고 싶다.... 라고 한다면 어떻게 해야 할까요? #include <iostream> class Machine { int data = 10; bool state = true; public: }; int main() { Machine m; if(m) { } } if 문 내에서는 bool 타입이 되어야 합니다. 그럼 이것을 동작 시키려면 어떻게 하면 될까요? operator bool() 만 제공하면 되겠죠. #include <iostream> class Machine { int data = 10; bool state = true; public: operator bool() {return state;} }; int m...


#explicit #explicitbool #safebool #traits #type

원문링크 : [C++][중급] safe bool, optional explicit(C++20이후) 이란?