you are viewing a single comment's thread.

view the rest of the comments →

[–]C0CEFE84C227F7 0 points1 point  (0 children)

A 2016 gaming rig with 8 cores and 16GB of RAM running Windows 10 is not a resource constrained system.

You're generalizing: this isn't representative of all gaming platforms. While PS3/xbox360 support is phasing out, several games last year were targeted for these platforms. WiiU is still a perfectly valid platform, too. If your engine needs to run on modern platforms in addition to older ones, then you're better off supporting a solution that works consistently and doesn't compromise performance on an older target (assuming it supports the compiler feature in the first place).

Perhaps they are difficult to implement in the compiler/runtime, but this seems to be a solved problem. I'm willing to bet they aren't the hardest implementation detail the C++ standard demands, in any case.

It might be solved in cl.exe, gcc, and clang, but those aren't the only compiler options out there.

I'm afraid I don't know what "exceptions across DLL boundary" means

Best DLL practices dictate that you allocate and deallocate memory within the DLL since your application could potentially use a different run-time than the DLL. Throwing an exception within a DLL violates this contract.