You're replying to a comment by fulano.

fulano Permalink
June 19, 2010, 06:39

Agreed. However,

a) inheritance and virtual functions

b) function overloading

c) templates

are all built-in mechanisms for the *creation* of new polymorphic components in a C++ program. These casts simply *are* polymorphic components: you have no means of extending the set.

You could argue that you can use them (especially the void*) to create new polymorphic components, but then *I* wouldn't call it a built-in mechanism any more (it becomes a Turing-trivial argument).

Still, I appreciate the observation. I hadn't thought of the casts in this light before.

Reply To This Comment

(why do I need your e-mail?)

(Your twitter handle, if you have one.)

Type the word "coding_224": (just to make sure you're a human)

Please preview the comment before submitting to make sure it's OK.