나는 특정 위치에 문자를 반환하는 vector<string>
및 메서드 (클래스 내)가 있습니다. 이것은 try catch 블록에서 모두 발생합니다. 내가 의도적으로 EXPECT_THROW(method, std::out_of_range)
으로 std::out_of_range
예외를 호출, 시험이 방법을 구글하려고 노력하지만, 대신에 전달 된 테스트를 얻는 내가 .what()
몇 가지 오류 메시지 vector::_M_range_check
및 테스트 실패를 얻을 때googletesting out of range
문제가 나타납니다.
한 방법
난 그냥vec.at(y).at(x) = c;
를 호출하고 어디도 나는 그래서
std::out_of_range
를 잡아하고 싶은 특정 위치에 다른 문자를 설정하는 유사한 void
방법도 있습니다
char ClassA::getC(int x, int y){
try{
return vec.at(y).at(x);
catch(const out_of_range& e){
cout << '\n' << e.what() << '\n';
return 0;
}
}
내가 잘못 했니?
그래서 try catch를 삭제해야합니까? – TheGuyWithStreetCred
... 아마도 앱이 앱에 의존한다면 더 많은 작업을해야 할 것입니다. –
힌트 : P – TheGuyWithStreetCred