C에서는 클래스 생성자를 템플릿 함수로 정의할 수 있습니다. 일반적으로 컴파일러는 생성자가 호출될 때 생성자에 전달된 인수를 검사하여 사용되는 템플릿 매개 변수를 결정합니다. 하지만 대신 템플릿 매개변수를 명시적으로 지정하는 방법이 있나요?
다음 클래스를 고려하세요.
struct A { template<typename T> A() {} };
안타깝게도 C 03은 생성자의 템플릿 매개변수를 명시적으로 지정하는 방법을 제공하지 않습니다. 표준에서는 다음과 같이 명시합니다.
[참고: 명시적인 템플릿 인수 목록은 함수 템플릿 이름 뒤에 오기 때문에
변환 멤버 함수 템플릿과 생성자 멤버 함수 템플릿은 함수 이름을 사용하지 않고 호출되기 때문에 이러한 함수 템플릿에 대해 명시적인 템플릿 인수 목록을 제공하는 방법입니다.] (§14.5.2/5)
위 내용은 C 생성자에서 템플릿 매개변수를 명시적으로 지정할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!