사용자 이름과 권한 식별자로 구성된 Permission 클래스가 있다고 가정 해 봅니다. 이 액세스권 클래스의 생성자는, 유저가 그 액세스권을 가지고 있을지 어떨지를 체크해, 액세스권이없는 경우는 슬로우합니다.사용되지 않는 객체 및 링크 시간 최적화
이러한 권한 개체는 스택 변수이며 사용자 및 권한으로 구성됩니다. 해당 사용자에 대한 권한이 없으면 throw 될 것으로 예상됩니다.
이 권한 개체는 방금 구성 했으므로 최적화되지 않지만 다시 사용하지 않는다는 보장이 있습니까? (권한이 거부되면 throw해야 함)?
그냥 말하면됩니다. 어떤 사람들은 생성자에서 발생하는 예외 및/또는 일반적인 테스트 목적으로 (비싼) 예외를 던지는 것을 좋아하지 않습니다. – Stefan
@ 스 테판 : 그 사람들은 잘못입니다. 나는 그 것을 주관적이라고 부르지 않을 것입니다. C++ 생성자와 예외는 함께 처리되도록 설계되었습니다. 예를 들어, 생성자에서 오류 코드를 반환 할 수 없다는 것은 오류 코드를 반환하는 대신 예외를 throw한다는 사실에 의해 정당화됩니다. – MSalters
@MSalters : 어쩌면 그 이유가 자신의 주장을 뒷받침하는 진정한 만족스러운 답을 찾지 못한 것일 수도 있습니다 .-) – Stefan