"No Matching Function - ifstream open() 오류" 이해
제공된 C 코드에서 "No Matching Function for call" 오류 'std::basic_ifstream::open(std::string&)' "는 문자열 리터럴을 사용하여 파일을 열려고 시도할 때 발생합니다. 논쟁. 이 오류는 VS가 아닌 dev cpp로 컴파일할 때 발생하며, 이는 플랫폼별 동작을 나타냅니다.
오류 해결
오류를 해결하려면 파일 열기 줄을 수정하세요. 다음과 같습니다:
file.open(name.c_str());
또는 생성자를 사용하여 파일을 구성하고 열 수 있습니다. stream:
std::ifstream file(name.c_str());
C 11 이상에서는 std::string 인수를 사용하여 파일을 열 수 있는 지원이 도입되었습니다. 그러나 dev cpp에서 사용되는 이전 버전의 C는 이 기능을 지원하지 않습니다.
추가 수정
파일 열기 수정 외에도 다음을 수행하는 것이 좋습니다.
위 내용은 내 `ifstream::open()`이 Dev-C에서는 '일치하는 함수 없음'으로 인해 실패하지만 Visual Studio에서는 실패하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!