What's the best way of implementing opaque (abstract) data types One good way is to use structure pointers which point to structure types which are not publicly defined.