"Philippe A. Bouchard" <[EMAIL PROTECTED]> writes: > David Abrahams wrote: > > [...] > >> look: >> >> { >> aligned_storage<T>::type storage; >> >> new ((void*)&storage) T(x, y, z); // throws >> >> // ~aligned_storage<T>() destroys non-existent T >> } > > What will happen to a normal type then?
What is a "normal type"? > { > T storage = T(x, y, z); // throws > > // storage.~T() destroys non-existent T Storage never gets constructed if T(x,y,z) throws, so it is also never destroyed. > } -- Dave Abrahams Boost Consulting www.boost-consulting.com _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost