You mean, how can that be replaced with ordinary operators? If you have multiple return's, move your 'finally' block to a separate function and call it before every 'return'.
In languages with implicit construction/destruction facility, like C++, you'd probably live happily without the finally block. There are however situations in C++ when you want to create a class with ctor/dtor only to make sure some block is executed when going out of scope, no matter how. That dtor would be your finally block.
ctor
try {
dostuff
} catch 1 {
blahblah
} catch 2 {
aoeuaoeuaoeu
} finally {
dtor
}
//why not put the dtor here and just leave off the finally block completely?