News for hackers. Stuff that matters.
Re:Modern C for C++ Peeps by JonChesterfield on Saturday January 07, 2023 @11:59AM (#34289956)
Not sure that's the part of C++ I'd heap praise on. For one thing, real RAII invokes the destructor, not a constructor. If your constructor throws, the destructor isn't going to be called. If your destructor throws, you're one passing exception away from std::terminate. Plus malloc doesn't throw, though new sometimes does.

Or, construction could return an optional/maybe style thing that you branch on, and then you don't need goto (sorry, non-local come-from with pretty branding) in your base language.

Re:Modern C for C++ Peeps by mgaunard on Saturday January 07, 2023 @12:10PM (#34290110)
The important part of RAII is that the constructor actually acquires the resource.

The fact the OP insisted the important part of RAII is not that but running destructors shows he hasn't understood the most important concept in C++ programming.

[dead]
Re:Modern C for C++ Peeps by moloch-hai on Saturday January 07, 2023 @05:30PM (#34293673)
The destructor is what distinguishes C++ from everything before and all but Rust even after, but is, as already explained above, just one part.

No exceptions, no RAII.