우리는 삭제하거나 작동이 보장된다 [] 삭제, 코드 리뷰에 내가 아래의 코드 검토, C++에서 언어 당으로C++에서 delete [] 또는 delete 조작에 필요한 try-catch를 사용하고 있습니까?
void FreeResourceForElements(void)
{
try
{
delete[] m_cpMemPool;
}
catch(...)
{
// statement for printing error message in log
}
}
에 대한 검토에서이 질문이 있어요 Visual Studio 2005에서 응용 프로그램을 개발하고 있습니다 따라서 예외를 throw하지 않기 때문에 여기 try-catch를 사용하지 않아도 catch 블록이 죽은 코드가됩니다. 그러나 내가 인터넷에서 그의 표준을 확인하기 위해 표준 참조를 검색했을 때, 불행히도 나는 아무것도 찾을 수 없었다. 그래서 나는이 질문을 여기에두고있다. 제발 조언.
소멸자가 던지지 않는 것이 일반적이며 C++에서는 기본값이 아닙니다. 하지만 여전히 전적으로 클래스에 달려 있습니다. 따라서 '삭제'가 던지지 않는 공식 보장은 없지만 실제로 그러한 보증이 될 수 있습니다. –