May 30, 2014 Question about wrapping raw C pointers from D | ||||
---|---|---|---|---|
| ||||
Hi, in C++ I can use smart pointers to wrap raw pointers with custom deleter to automatically manage C resources. Is there anything like this in D? |
May 30, 2014 Re: Question about wrapping raw C pointers from D | ||||
---|---|---|---|---|
| ||||
Posted in reply to Rusty D. Shackleford | On 05/29/2014 09:38 PM, Rusty D. Shackleford wrote: > Hi, in C++ I can use smart pointers to wrap raw pointers with custom > deleter to automatically manage C resources. Is there anything like this > in D? 1) Structs provide RAII: struct S { // ... ~this() { // cleanup } } 2) catch and finally clauses can be used 3) scope(failure), scope(exit), and scope(success): { auto r = allocateSomeResource(); scope(exit) deallocateSomeResource(r); // ... } Ali |
Copyright © 1999-2021 by the D Language Foundation