과 휴식.템플릿 기능은 내가 좋아하는 무언가로 정의되는 함수의 톤을 가진 새 할당
최근에 기본 할당자를 고객 할당 자로 변경해야했습니다. 나는
내가 가진이 평균이 다시 작성 않습니다 .. 모든 경우에 오버로드 된 할당을 사용하지 않는, 더 복잡하게 만들려면
template<typename T, typename Alloc>
void myFunction1(vector<T,Alloc>& vin);
: 이것은 내가에 정의를 변경하지 않는 한 모든 기능을 깰 것으로 보인다 두 개의 정의가있는 모든 함수, 하나는 할당 자의 템플릿과 할당자가없는 다른 정의가있는 함수입니까? 정말이 대답이 아니길 바래 ...
당신은 variadics에 갈 필요가 없습니다. 라이브러리 요구 사항에 따르면 두 개의 형식 인수를 취하는'vector'라는 템플릿이 있습니다. 구현시 추가 인수를 추가 할 수 있지만 'Vector'가 작동하지 않도록 할 수 없습니다. 문제가 생길 수있는 곳은 표준 라이브러리 유형에 대한 자신의 선언을 작성하려고하는 경우입니다. 표준 라이브러리 유형을 사용하는 것은 단순히 문서화 된대로 작동해야합니다. –
@PeteBecker : 네 말이 맞아. 나는 "허용 된 추가 논쟁"이 당신을 물기 위하여 올 다른 상황 (전문화)를 생각하고 있었다. 이 글에서이 글을 삭제하겠습니다. –
전문화에 대한 좋은 지적. 나는 그걸 생각하지 않았다. –