explicit는 클래스를 생성할 때 생기는 암묵적 형변환(자동 형 변환)이 일어나는 것을 막아주는 기능을 합니다.

선언과 동시에 대입 연산자를 실행하는 것에 대해 확실하게 해주는 역활을 한다.

class A
{
public:
   A();
   explicit A(int x);
}
 
void main()
{
   A a;
   // a = 1; Error
   a = A(1); // 확실하게(명시적으로) 선언해야함.
}

 

'C++ > Effective' 카테고리의 다른 글

생성자, 소멸자, 대입 연산자(1)  (0) 2022.02.04
객체 초기화  (0) 2022.01.31
const  (0) 2022.01.25
#define  (0) 2022.01.20
C++  (0) 2022.01.16

+ Recent posts