C++에는 서로간에 과부하가 걸릴 수있는 최대 함수 수가 있습니까?함수 오버로드의 최대 수는 얼마입니까?
"일치하는 기능 없음"오류가 발생했습니다. 나는 (배열/벡터에 대한 템플릿을 포함하여) 인코딩 할 각 struct/value 유형에 대해 약 900 가지 버전의 오버로드 된 encode
함수가 있습니다. encode 함수는 인코딩해야하는 필드에 따라 서로를 호출합니다.
encode(std::string)
함수를 파일 (.h & .cpp)의 맨 아래에 넣으면 "no matching function"이 반환됩니다. 그것이 정상 근처에 있다면 그들은 그렇지 않습니다.
더 중요한 것은 어떻게 해결해야합니까? 오류가 나타나는하고 기능을 넣을 위치에 따라 사라지고 당신의 설명으로
(리눅스 GCC 버전 4.6.1)
900 과부하! – ronag
900 개의 과부하가 발생합니다. ?????? ?? ????? 오버로드를 적절하게 그룹화하는 것으로 시작합니다. 일반적으로 대부분의 컴파일러는 버전 옵션을 지원합니다 ... 컴파일러의 설명서를 읽으십시오. – Nim
왜 900 오버로드가 많은지 고려해보십시오. '스트림 연산자 << (stream, smtn_other)'의 오버로드는 어떨까요? – Lol4t0