저는 C++을 처음 사용하며 다음을 수행 할 수 있는지 또는 더 좋은 방법이 있는지 궁금합니다.try 문에서 초기화 된 객체에 액세스하는 방법
나는 데이터베이스 핸들러에 대한 사용자 정의 예외 클래스가 : 나는 DGeneDB 개체에 대해 수행 할
int main(int argc, char const ** argv){
try {
DatabaseHandler DGeneDB = DatabaseHandler("string/to/path");
}catch(DatabaseHandlerExceptions &msg) {
std::cerr << "Couldn't open Database" << std::endl;
std::cerr << msg.what();
return 1;
}
DGeneDB.foo() //Can't access this object since it was initialized in try statement
return 0;
}
내가 억 물건을 가지고 싶지 않아 :이처럼 내 주에서 이것을 사용 try 문 내에서 모든 작업을 수행하십시오. 난 단지 초기화 중에 발생하는 생성자 예외를 잡아 내고 싶다. 시도 밖의 객체로 작업하려면 어떻게해야합니까? 내 말은, 예외를 throw하면 1을 반환하고 다른 객체에 도달하기 전에 main()을 중단합니다.
try 블록 내부의 모든 작업을 수행하십시오. 하지만 이것이 사용자 정의 예외 클래스를 갖는 것과 어떤 관련이 있습니까? – juanchopanza
왜'try' 블록 밖에서 액세스해야합니까? –
어, 고마워. – jwillis0720