카테고리 없음
[C++] 변환 생성자와 암시적인 변환을 금지하는 explicit
변환 생성자( converting constructor )변환 생성자는 암시적인 타입 변환을 위해 호출되는 생성자를 말합니다. 먼저, 암시적인 타입 변환의 예를 보겠습니다.void printVal(double val){ cout main 함수에서 printVal 함수를 int 타입의 인자로 호출하게 되면, 컴파일러는 먼저 int 타입 매개 변수를 가진 함수를 찾습니다. 만약, 그러한 함수가 없다면 "숫자 변환 규칙"에 따라, int 타입을 대신할 수 있는 타입( 여기서는 double )을 매개 변수로 가진 함수를 찾아서 호출하려고 합니다.그렇게 하기 위해서, 컴파일러는 자동으로 int 타입의 값을 double 타입의 값으로 변환합니다.이것이 암시적인 타입 변환( implicit type conve..
2025. 3. 21.