Abstract
An operation on an element container is said to provide a strong guarantee of exception safety if, in case an exception is thrown, the operation leaves the container in the state in which it was before the operation. In this paper, we explore how to adjust operations on C++ standard-library containers to provide the strong guarantee of exception safety, instead of the default guarantee, without violating the stringent performance requirements specified in the C++ standard. In particular, we show that every strongly exception-safe operation on dynamic arrays and ordered dictionaries is only a constant factor slower than the corresponding default-guarantee operation. In terms of the amount of space, the overhead introduced is linear in the number of elements stored.
Original language | English |
---|---|
Title of host publication | Proceedings of the 3rd DIKU-IST Joint Workshop on Foundations of Software |
Volume | 07 |
Publication date | 2007 |
Pages | 158-169 |
Publication status | Published - 2007 |
Event | Making operations on standard-library containers strongly exception safe - Duration: 29 Nov 2010 → … |
Conference
Conference | Making operations on standard-library containers strongly exception safe |
---|---|
Period | 29/11/2010 → … |