시퀀스 크기를 결정하고 싶습니다. STL의 모든 시퀀스에 대해 .size() 멤버 함수를 사용할 수 있지만 시퀀스가 배열 인 경우 문제가 발생합니다. 인수로 전달 된 시퀀스가 배열 형식 또는 STL 시퀀스 형식인지 어떻게 프로그래밍 방식으로 확인할 수 있습니다.공통 인터페이스를 사용하여 시퀀스 크기 찾기
template<typename sequence>
size_t find_size(sequence& s)
{
// if s has .size() member function
// return s.size()
//else if it is an array type
// return sizeof(s)
//else throw error
}
는 기본적으로 난 C++ 11
PS에서 비회원 크기 우리는 비회원 시작이처럼 기능()과 end()를 찾고 있어요 : 시퀀스 나 순서 등을 의미 배열을 인수로 포함하여 STL에 정의되어 있습니다 (모두 .size() 멤버 함수가 있음).
사실, 나는 어떤 시퀀스 유형과도 독립적 이도록 그러한 인터페이스를 갖고 싶다. –
당신이 무엇을 요구하고 있는지 잘 모르겠습니다. 두 가지가 아닌 한 가지 기능 만 사용하여 동일한 결과를 얻고 싶습니까? –
오버로드 된 함수도 좋습니다. –