(C++) :함수에서 typename을 매개 변수로 사용하는 방법은 무엇입니까? 내가 매개 변수로 유형 이름을 통과 할 수 있어야합니다
int X = FileRead(file, 9, char);
개념은 FILEREAD입니다 (표준 : : fstream, INT 볼때는 ???) (POS의 *의를 sizeof를 읽어 어떤 유형은) 원하는 위치를 얻는 것입니다. ,
template<typename T>
T FileRead(std::fstream file, int pos, T type)
{
T data;
file.read(reinterpret_cast<char*>(&data), sizeof(data));
return data;
}
하지만 내가 FILEREAD을 사용하고자 할 때마다 사용하는 유형의 변수를 만드는 것이 필요하고, 내가 정말 그냥 때문에 하나 개의 함수의 전체 프로그램을 재 설계 기분이 안 : 나는 템플릿을 시도 어쨌든 typename을 매개 변수로 사용합니까?
그러면 "T '에 대한 인수를 추론 할 수 없다는 오류가 발생합니다. –
반환 값이 아닌 인수로 T가 필요하다고 생각합니다. –
FileRead (파일, 위치)와 같이 호출하십시오. –
sth