Embedded Containers

Jonathan M Davis newsgroup.d at jmdavisprog.com
Tue Dec 5 22:21:51 UTC 2017


On Tuesday, December 05, 2017 22:09:12 A Guy With a Question via 
Digitalmars-d wrote:
> Is there actually a difference between the c style cast and
> cast(type)? Other than verbosity...

They're not the same. D's cast is not split up like C++'s casts are, but
it's not exactly the same as C's cast either - e.g. like C++'s dynamic_cast,
if a class to class conversion fails, you get null, which C's cast doesn't
do. Also, I think that D's cast is pickier about what it will let you do,
whereas C's cast is more likely to want to smash something into something
else if you ask it even if it doesn't make sense. And of course, D's cast
understands D stuff that doesn't even exist in C (like delegates). I don't
know exactly what all of the differences are though.

Regardless, the reason for the verbosity is so that you can easily grep for
casts in your code.

- Jonathan M Davis



More information about the Digitalmars-d mailing list