Sure, scope() may be useful for this, but it seems in my experience that destructors almost always perform this without any additional code at thecallsite.
Destructors only work if:a) you already have RAII wrappers provided, otherwise it is much more code to write
b) you work with structs, class destruction is non-determenistic
