기본적으로 C++에서는 단일 인수 생성자를 암시 적 변환 연산자로 사용할 수 있습니다. 이것은 생성자를 명시 적으로 표시하여 표시하지 않을 수 있습니다.C++에서 단일 인수 생성자를 명시 적으로 지정 하시겠습니까?
컴파일러가 자동으로 변환을 위해이 생성자를 사용할 수 없도록 "명시 적"을 기본값으로 만드는 것을 선호합니다.
표준 C++에서이를 수행 할 수있는 방법이 있습니까? 실패 할 경우,이를 수행하기 위해 Microsoft C++에서 작동하는 pragma (또는 유사)가 있습니까? g ++ (우리는 사용하지 않지만 유용한 정보 일 수 있습니다)는 어떻습니까?
솔직히 말해서, 우리는 이식성에 대해 너무 신경 쓰지 않습니다; 우리는 창고 다. 그것은 우리가 상관하지 않는다는 것을 의미하는 것이 아닙니다. 즉, 일단 Win32 GUI 프레임 워크를 선택하면 Linux 또는 OSX를 지원하는 것이 학문적 인 것입니다. –
이식성은 단순한 플랫폼 문제가 아닙니다. 윈도우 용으로 사용할 수있는 다른 컴파일러가 있습니다 (예 : 인텔, MinGW. 새로운 버전의 Microsoft 컴파일러에는 이전 버전과의 호환성도 있습니다. 당신이 가진 유일한 보장은 C++위원회가 기존의 C++ 코드를 깨기 전에 매우 신중하게 생각한다는 것입니다. –
명확히하기 위해, 나는 Microsoft가 생각하지 않고 사람들의 코드를 깨뜨릴 것이라고 제안하지는 않지만 표준위원회의 것과는 다른 압력을 가지고 있습니다. –