단일 인자를 갖는 생성자가 자동 형 변환이 일어나는 것을 막을 수 있게 해준다.
class Stack {
explicit Stack(int size); //size로 초기화하여 stack을 생성한다.
};
Stack s;
...
s = 40; //int에서 Stack으로 자동 형 변환이 일어난다. -> 에러
Stack s1(40); //OK
Stack s2 = 40; //ERROR
X x;
Y Y(x); // explicit conversion
X x;
Y y = x; // implicit conversion
class Stack {
explicit Stack(int size); //size로 초기화하여 stack을 생성한다.
};
Stack s;
...
s = 40; //int에서 Stack으로 자동 형 변환이 일어난다. -> 에러
Stack s1(40); //OK
Stack s2 = 40; //ERROR
X x;
Y Y(x); // explicit conversion
X x;
Y y = x; // implicit conversion